ATI Cards

I have an ATI Rage 128 video card with 32 megs of memory on board. I’m having quite a bit of trouble with the OpenGL drivers for this card. Things that work under the MS Windows software implementation don’t seem to work using the driver’s impelementation. For instance, under the software implementation I can highlight 3D objects by switching the glDepthFunc to GL_LEQUAL, and re-rendering the object to the front buffer. As long as I have faithfully reproduced the matrix state, the entire object changes color correctly. However, when I switch to a hardware accelerated pixel format (and thus the ATI driver) and perform the same highlighting operation, I end up with parts of the object highlighting and other parts remaining there original color. There are other peculiarities that I noticed, but I won’t get into all of them.

Has anyone else had similar experiences with ATI drivers?

I have no direct knowledge of the ATI’s OpenGL implementation. But I would suggest maybe trying a different approach to highlighting objects. A method I have used and not had any problems with is to render all objects and world geometry except for the highlighted object. Then set the depth test to GL_ALWAYS and render a scaled up version of the object in the highlight color, and then set the depth test back to GL_LEQUAL and draw the object again as you would normally. The resulting effect I get is a bright border that surrounds the highlighted object, and it can be seen through walls and such. And I also use a function which can snap the view into a position that places the highlighted object in the center of the screen.

[This message has been edited by DFrey (edited 10-03-2000).]

I’m not sure that the method you describe will work for my app. The app I’m writing is a CAD-like app that displays many thousands of lines, all of which are almost always in the viewing frustum. I wanted to be able to highlight objects without having to completely redraw the scene, which is why I switch to drawing to the front buffer and render the highlighted object over top of itself. This way, I can also un-highlight the object using the same method without redrawing the scene.

The ATI implementation of the OpenGL drivers are very bad. I’m developing for the CAD sector too and the only problem I got with OpenGL is that with ATI cards. Even got a blue screen when switching to a metallic effect!
Didn’t find a fix for those errors, so we tell our customers to use the older (non OpenGL) drivers from ATI. We also ship precompiled mesa-dll’s which can be copied to our .exe.