12.3. OpenGL — 3D Configuration

In Linux, Direct3D is only available on x86 and compatible systems as part of the Windows emulator WINE, which in turn makes use of the OpenGL interface for the implementation.

12.3.1. Hardware Support

SUSE LINUX includes several OpenGL drivers for 3D hardware support. Table 12.3. “Supported 3D Hardware” provides an overview.

Table 12.3. Supported 3D Hardware

OpenGL DriverSupported Hardware
nVidianVidia Chips: all except Riva 128(ZX)
DRI

3Dfx Voodoo Banshee,

3Dfx Voodoo-3/4/5,

Intel i810/i815/i830M,

Intel 845G/852GM/855GM/865G,

Matrox G200/G400/G450/G550,

ATI Rage 128(Pro)/Radeon

If you are installing with YaST for the first time, 3D acceleration can be activated during installation, provided YaST detects 3D support. For nVidia graphics chips, the nVidia driver must be installed first. To do this, select the nVidia driver patch in YOU (YaST Online Update). Due to license restrictions, the nVidia driver is not included in the distribution.

If an update is carried out instead of a new installation or a 3Dfx add-on graphics adapter (Voodoo Graphics or Voodoo-2) needs to be set up, the procedure for configuring 3D hardware support is different. This depends on which OpenGL driver is used. Further details are provided in the following section.

12.3.2. OpenGL Drivers

The OpenGL drivers nVidia and DRI can be configured easily with SaX2. For nVidia adapters, the nVidia driver must be installed first. Enter the command 3Ddiag to check if the configuration for nVidia or DRI is correct.

For security reasons, only users belonging to the group video are permitted to access the 3D hardware. Therefore, make sure that all local users are members of this group. Otherwise, the slow software rendering fallback of the OpenGL driver will be used for OpenGL applications. Use the command id to check whether the current user belongs to the group video. If this is not the case, use YaST to add the user to the group.

12.3.3. The Diagnosis Tool 3Ddiag

The diagnosis tool 3Ddiag allows verification of the 3D configuration in SUSE LINUX. This is a command line tool that must be started in a terminal. Enter 3Ddiag -h to list possible options for 3Ddiag.

To verify the XFree configuration, the tool checks if the packages needed for 3D support are installed and if the correct OpenGL library and GLX extension are used. Follow the instructions of 3Ddiag if you receive failed messages. If everything is correct, you will only see done messages on the screen.

12.3.sec:x11.3d.test. OpenGL Test Utilities

For testing OpenGL, the program glxgears and games like tuxracer and armagetron (packages have the same names) can be useful. If 3D support has been activated, it should be possible to play these smoothly on a fairly new computer. Without 3D support, these games would run very slowly (slideshow effect). Use the glxinfo command to verify that 3D is active, in which case the output contains a line stating direct rendering: Yes.

12.3.5. Troubleshooting

If the OpenGL 3D test results are negative (the games cannot be smoothly played), use 3Ddiag to make sure no errors exist in the configuration (failed messages). If correcting these does not help or if failed messages have not appeared, take a look at the XFree86 log files.

Often, you will find the line DRI is disabled in the XFree86 4.x file /var/log/XFree86.0.log. The exact cause can only be discovered by closely examining the log file — a task requiring some experience.

In such cases, no configuration error exists, as this would have already been detected by 3Ddiag. Consequently, at this point, the only choice is to use the software rendering fallback of the DRI driver, which does not provide 3D hardware support. You should also go without 3D support if you get OpenGL representation errors or instability. Use SaX2 to disable 3D support completely.

12.3.6. Installation Support

Apart from the software rendering fallback of the DRI driver, all OpenGL drivers in Linux are in developmental phases and are therefore considered experimental. The drivers are included in the distribution because of the high demand for 3D hardware acceleration in Linux. Considering the experimental status of OpenGL drivers, SUSE cannot offer any installation support for configuring 3D hardware acceleration or provide any further assistance with related problems. The basic configuration of the graphical user interface (X Window System) does not include 3D hardware acceleration configuration. If you experience problems with 3D hardware acceleration, it is recommended to disable 3D support completely.

12.3.7. Additional Online Documentation

For information about DRI, refer to /usr/X11R6/lib/X11/doc/README.DRI (XFree86-doc).