I know this seems like a silly question, but you never know with crappy OpenGL drivers out there for some old video cards. So my question is, are there any known compatability issues out there on even rather old, non-accelerated hardware, when using display lists? Or for that matter, triangle lists?
Can’t tell you why, but in my prog textures rendered in display lists arn’t visible on ATI, Intel etc. boards, although they seem to work nice with NV cards (from TNT2 up). checked 10x times. BTW, when I rendered skybox in display lists I got 10FPS, when called. without display list (simply glVertex) I can reach 70+FPS. Think what you wish
Wow, that’s just plain weird! Never heard of that… I’m glad I asked.
How 'bout triangle lists? Anybody had problems with those on any hardware?
Triangle lists? You mean TRIANGLE_STRIP? If that’s what you mean then there should be NO problems as they are VERRY core opengl as far as I’ve worked with them, works fine
About lists one more con is that you can’t efficiently use vertex & fragment programs with them.
No I mean triangle lists, as in glDrawElements(). Where you have an array of verts.
DrawElements() is recomended actualy As they work faster & there are even special extensions like VAR for them.
Old vodoo drivers are very slow at display lists. However, they’re an easy way to speed up geometry performance on nvidia and ATI hardware so you should support them IMHO, but provide a user tweakable fallback that uses plain vertex arrays or imemdiate mode. glDrawRangeElements (OpenGL 1.3 or 1.2, can’t remeber) is generally faster than plain glDrawElements and it’s usually trivial to use it instead.
Thanks, guys! You’ve been a great help. One last check, does anybody know of any vid cards that don’t adequately support glDrawElements? Even very old cards as what I’m writing is for even very old platforms. Speak now or forever hold your peace. I guess compatability is the main thing in what I’m doing here. It’s just a screensaver with very low geometry. So the geometry isn’t the real issue, but I want it to be compatible first, fast second.
Quake games use glDrawElements, so it should be supported If the geometry complexity is really low though, you might as well use immediate mode which shold be impossible to be incompatible with.
Thanks large, harsman! Good tips. In one application, I have VERY low geometry requirements. Specifically, 8 verts, making 12 faces. Pretty low.