While studying the dri control flow (http://dri.sourceforge.net/doc/dri_control_flow.html) I found that the OpenGL renderer can directly access the hardware without the involvement of Xserver and kernel driver.In my PC, glxinfo produced the following output,
direct Rendering: Yes
OpenGL renderer string: Mesa DRI Intel(R) IGNG_M GEM 20091221 2009Q4
While examining glxgears using strace I found that various X libraries are also loaded along with i965_dri.so, libdrm.so .
I was wondering how can a OpenGL test app use the direct path to hardware (mentioned in the DRI documentation) instead of the path that I found in glxgears?
Mesa is not full hardware accelerated, most of your OpenGL commands will run on software mode. Most drivers provided by the linux kernel don’t support full hardware acceleration. If you want them, most of the time you’ll have to install proprietary drivers, when available.
Second, it seems that despite of all these years, Intel graphic cards have really bad support of OpenGL.
According to http://dri.sourceforge.net/doc/DRIintro.html :
The 3D capabilities of a graphics card are accessed through the 3D DRI driver. This driver essentially converts OpenGL command sequences into hardware commands. It then uses the kernel module to transmit the commands to the hardware. The 3D driver and kernel module basically implement the entire OpenGL rendering pipeline. The 3D driver implements as much of it as possible in user space while the kernel module does whatever is needed in kernel space.
X libraries will always be needed for doing OpenGL rendering on X11: for creating the window, for managing events…
This topic was automatically closed 183 days after the last reply. New replies are no longer allowed.