1.1. 3D-Grafik-Beschleunigung
Bemerkung
Die Inhalte sind arg veraltet!
Unter 3D-Grafik-Beschleunigung wird die Möglichkeit verstanden, 3D-Funktionen (OpenGL) hardwarebeschleunigt (Grafikkarte) innerhalb eines X11-Fensters anzuzeigen.
1.1.1. Technische Übersicht
Diese Übersicht mag aus dem technischen Standpunkt nicht ganz korrekt sein, zeigt aber verständlich auf, wie 3D-Funktionen hardwarebeschleunigt werden:
3D-Anwendung => X11-Server => DRI => DRM => Grafikkarte
Die 3D-Funktionen werden von der 3D-Anwendung über den X11-Server an DRI weitergereicht. DRI (Direct Rendering Infrastructure) ist die Schnittstelle zwischen X11-Software und Kernel für den direkten Zugriff auf die Grafikkarten-Hardware.
Von DRI geht es weiter zu DRM (Direct Rendering Module). DRM ist im Kernel verankert und greift somit direkt auf die Grafikkarten-Hardware zu.
1.1.2. Einrichtung von 3D-Grafik-Beschleunigung
Eine Schritt für Schritt-Anleitung für den X.Org-Server, wie sie zu hardwarebeschleunigtem OpenGL kommen. Falls Sie den XFree86-Server einsetzen, müssen Sie gegebenerfalls die Schritte anpassen (z.B. andere Konfigurationsdatei)!
1.1.2.1. DRM
Falls der Kernel DRM für Ihre Grafikkarte unterstützt, sollte die DRM-Unterstützung automatisch geladen werden. Überprüfen Sie mit:
dmesg|grep drm
ob DRM vom Kernel unterstützt wird. Die Ausgabe bei FreeBSD 5.3 für eine ATI Mobility 7500 sieht wie folgt aus:
drm0: <ATI Radeon LW Mobility 7500 M7> port 0x3000-0x30ff mem
und und.. info: [drm] AGP at 0xd0000000 256MB info: [drm] Initialized
radeon 1.11.0 20020828 on minor 0
Bei Problemen sehen Sie bitte unter DRI für FreeBSD nach! Bei Problemen mit DRM bei i915 Chipset gibt es hier abhilfe.
DRM muß explizit in den Kernel eingebaut werden, was bei den verschiedenen Grafikkarten unterschiedlich aussieht. /usr/src/sys/i386/conf/NOTES sagt dazu:
# Direct Rendering modules for 3D acceleration.
device drm # DRM core module required by DRM drivers
device mach64drm # ATI Rage Pro, Rage Mobility P/M, Rage XL
device mgadrm # AGP Matrox G200, G400, G450, G550
device r128drm # ATI Rage 128
device radeondrm # ATI Radeon
device sisdrm # SiS 300/305, 540, 630
device tdfxdrm # 3dfx Voodoo 3/4/5 and Banshee
options DRM_DEBUG # Include debug printfs (slow)
1.1.2.2. DRI
Vergessen Sie nicht, DRI (graphics/dri oder bei Verwendung von XFree86-4.5 /graphics/xfree86-dri) zu installieren:
# pkg_add -r dri
oder:
# pkg_add -r xfree86-dri
1.1.2.3. X11-Server
Folgende Einträge sind in der X11-Server-Konfigurationsdatei (/etc/X11/xorg.conf bzw. /etc/X11/XF86Config) notwendig:
Section "Module"
Load "dri"
Load "glx"
EndSection
Section "DRI"
Mode 0666
EndSection
1.1.2.4. Abschlusstest
Kontrollieren Sie mit:
# glxinfo | grep rendering direct rendering: Yes
ob hardwarebeschleunigtes OpenGL unterstützt wird. Falls es nicht
funktioniert, könnte es sein, dass Ihre Grafikkarte AGP nicht benutzt.
Sie müssen dann AGP
aktivieren.
glxinfo
ist in
graphics/mesa-demos
enthalten.