Rendering Order

Wow, thanks for the long explanation – It’s late here but I’ll read it
tomorrow.

On a side note: Benoit, one idea that the guy had was to render maybe 15
different spheres (each with it’s own level of detail) and depending on
how close the object is to the camera it chooses a higher detail object.

Sure that’s doable! Having 15 levels of details is overkill but why not
8-10.

Just allocate an array of objects of class Sphere, and initialize
sphere[i] with your preferred level of detail with

sphere[i].setup( level_of_detail[i] );

(Feel free to add a constructor taking the level of detail as argument).

However, if the spheres are very small (like, only a few pixels on screen)
then even the minimal level of detail (value 1) is too much detail (the
sphere is then a icosahedron, so it has 20 triangles). Maybe we should add
another “artificial” level of detail with value 0, where the sphere would
be rendered as a single point or as a single quad.

Cheers,
Benoit

(Wed, Apr 11, 2007 at 01:50:38PM -0400) Geoffrey Hutchison geoff@geoffhutchison.net:

On Apr 11, 2007, at 1:22 PM, Donald Ephraim Curtis wrote:

I’ve been trying to get ahold of some OGL people here on campus but
nothing back from them so far. I feel like this is a problem i’m
unable
to solve and it’s pissing me off.

It would be interesting to know how this is handled in professional
gaming systems.

Well, I can definitely suggest going to mailing lists. Honestly, you
might try:
http://lists.apple.com/archives/Mac-opengl

Mention that you’re working on an app running in Linux and Mac and
trying to get the best performance.

Actually, Apple’s developer tools include some great performance
bits, including an OpenGL profiler, which tells you how long you’re
spending doing different GL calls.

A few other interesting articles:
http://developer.apple.com/graphicsimaging/opengl/optimizingdata.html
http://developer.apple.com/graphicsimaging/opengl/opengl_serious.html

Granted, Apple uses hardware-accelerated OpenGL, so as Benoît
mentioned, some tricks won’t help software-based GL performance. But
it may be the most organized group of OpenGL developers out there. (I
haven’t found a similar forum for Linux, and Windows generally uses
DirectX.)

Cheers,
-Geoff