Comment 3 for bug 1115664

Nicolai Hähnle (nha) wrote :

I actually went all the way back to build-17, which I know used to work well, but even build-17 runs as slow. So it must be a change in the driver or other system component. On the other hand, the number of triangles and the overdraw in games like Cube or the various older Quakes should be on the same order of magnitude as for Widelands, and those games run just fine (as well as can be expected on a six year old laptop...).

By disabling different code paths, it turns out that it suffices to have terrain rendering (without bobs or immovables or overlays) to get this extreme slowdown.

It may be tempting to blame the driver developers for this regression. But to be honest, our OpenGL terrain rendering has always been horrible. What we do (tons of state changes + immediate mode) is the exact opposite of what everybody knows OpenGL best practices to be. On top of that, immediate mode is FUBAR from the perspective of driver development (I speak from experience ;-)), so I personally don't blame the Mesa developers if it turns out that the performance regression is in their code (which is the most likely scenario).

I should find some time over the next few days, I will see what I can do about the terrain rendering code.