   Cg Shaders and Display Lists, Help?
  I realize this may be a completly stupid/easy question, but I'm guessing that Display Lists don't work well with vertex shaders. Is that the case? I've just recently attempting to start learning shader programming using Cg, and all the example code I've seen uses Immediate mode calls.I tried binding a vertex shader before issuing a glCallList command, but it seems that all the glTranslate, glRotate, and glScale calls inside the Display List are lost. Is this because the Model View Projection matrix that I bind to the shader is bound before I call the Display List is called?I've never used VBOs before, but since they only hold vertex information (correct?), then they would be the appropriate data structure for static geometry that uses shaders? I'm assuming the approach would be something like:1) Make all the state changes (scales, transforms, rotations, ect.)2) Bind the Shader3) Render the VBOIs that the generally accepted method? Thanks for the help, I'm rather new to shader programming, so any help is appreciated.---------EDIT:I could also bind the variables as varying inputs to the shader, right? That might be more efficient than issuing the state changes before the shader is executed. Do you think the following approach is better?1) Bind the Shader2) Bind shader parameters for scaling, rotating, transforming the verticies3) Render the VBO   
  yes, you have to first do the translation (rotation, scale), then set the matrix parameter, and then render. The binding of the shader should be before you set its variables. I first bind the program, the do some transformations, and then set the matricies.   ;  cgGLSetStateMatrix doesn't track state changes made inside a display list, although GLSL does.   