Hello,
my program behaves strange: It runs faster with a slower gfx board, and this is annyoing, and I have no idea what goes wrong.
To be more precise: I got two neary ldentical computers (Athlon XP 2000+, Mainboard Elitegroup K7S5A / K7S6A, 512 MB ram, suse linux 8.2, nvidia linux driver 53.36), one has got a geforce fx 5700, the other one a geforce fx 5900 xt, both 128 mb. On both, the same program is running with an identical database and identical configurations. The scene looks like this:
http://de.geocities.com/westphj2003/a.jpg
http://de.geocities.com/westphj2003/b.jpg
http://de.geocities.com/westphj2003/c.jpg
http://de.geocities.com/westphj2003/d.jpg
(if the links do not work, just hit enter in the browsers url line, then they should do, this is another weird error ).
What happens is that when I reduce the programs functionality by commenting out the various drawing calls, the computer with the fx 5900 xt is faster, but when drawing all there is in the scene, it gets about 20-30 % slower than the one with the 5700. It is like this:
DrawGround();
//DrawSky();
//DrawObjects();
//DrawTrees();
5900 about 100% faster than 5700
DrawGround();
DrawSky();
DrawObjects();
//DrawTrees();
5900 about 60% faster than 5700
DrawGround();
DrawSky();
DrawObjects();
DrawTrees();
5900 about 20-30% SLOWER than the 5700.
Ground and objects are drawn as display lists, the trees are organized as quad tree with every “final” node containing 200 faces. There is one version with the trees rendered with immediate opengl calls (glBegin(GL_QUADS) … glEnd()) and one with this happening inside of a display lists (one for each “final” quadtree node), but both versions behave the same (dl a little faster than immediat, but nonetheless on the 5900 slower than on the 5700).
I do not even have an idea what could be going wrong, or where to search… but it is annoying. Does anyone have an idea?
Thanks
Jan