Bug #651

NeL3D fails to run on GM45 Intel on Linux

Added by Spex about 9 years ago. Updated about 7 years ago.

Status:New Start date:08/18/2009
Priority:Normal Due date:
Assignee:- % Done:

0%

Category:OS: GNU/Linux
Target version:-

Description

xf86-video-intel 2.8.0, Linux kernel 2.6.30.*, xorg-server 1.6.3

The problem is the NVVertexProgram extension, which the driver proclaims to support (it also has NVVertexProgramEmulated). The OpenGL backend has a preference on this over lets say ARBVertexProgram. Result is the driver giving up as soon as some real world NVVertexProgram comes along. Manually disabling this extension yields a successful run of Snowballs, for example.

The bug should be pushed upstream for this specific case, however, it highlights a general problem we have been running into and will run into in the future to come: Certain OpenGL extensions don't work at all or perform worse than similar other ones on certain hardware/driver combinations.

gm45-intel-2.8.0-mesa-7.5.glxinfo.txt - glxinfo output of the mesa driver (16.3 kB) Magnifier Spex, 08/18/2009 07:40 am

History

#1 Updated by Spex about 9 years ago

  • Category set to 3d - OpenGL

#2 Updated by Spex about 9 years ago

As a quick fix for those having the same problem, change in driver_opengl_extension.cpp the line 1252 to init the NVVertexProgram extension to false all the time:

...
if(!ext.DisableHardwareVertexProgram)
{
   ext.NVVertexProgram = false; //setupNVVertexProgram(glext);               
   ext.EXTVertexShader = setupEXTVertexShader(glext);
   ext.ARBVertexProgram= setupARBVertexProgram(glext);
}
...

#3 Updated by lubos almost 9 years ago

I just tried Snowballs on Debian testing + Mesa 7.6 from unstable, and it now renders properly. (intel GMA 4500)

#4 Updated by kervala almost 8 years ago

  • Project changed from NeL to Ryzom
  • Category deleted (3d - OpenGL)

#5 Updated by kervala almost 8 years ago

  • Category set to OS: GNU/Linux

#6 Updated by kervala almost 8 years ago

We should give priority to ARB extensions when equivalent are provided.

#7 Updated by kervala over 7 years ago

Please someone can confirm this bug ?

I tried on a GMA 950 and it worked fine, I had no bug at all.

#8 Updated by Spex about 7 years ago

Unfortunately, no conclusion can be taken on the G(M)45, if it works on the GMA950. I have the hardware available, but unfortunately no time until next week to get all the necessary bits checked out, compiled and running.

The bug report is quite old, though. I'm not sure if that is correct, but I remember reading somewhere about the NV-extensions being worked on some time ago, so that bug might actually be fixed by now (the versions of all involved parts have gone up a good few numbers).

So, unless someone else feels like checking into this I will see that I can schedule some NeL/Ryzom-ing next week to crosscheck on this issue at least :-)

Also available in: Atom PDF