Originally Posted by BobMcGee123
-A renderer class manager ... the clients are stored in containers which are various types of primitives to render using the fixed function OpenGL pipeline (tris/quads, textured tris/quads, vertex lit tris/quads, alpha blended tris/quads, spheres domes etc etc)....all rendering is a manifestation of adding a client to the renderer. All objects are allowed to add themselves to a renderer by calling their 'Draw' hooks, which paints the object by adding the required primitives to the renderer, and then at the end of the frame the actual rendering functions are called (and all similar types are drawn at the same time).