Hilighting within a stack

My world has many overlapping objects drawn in perspective, and I want the user to select an object by clicking on it. The selected object is then indicated by rendering it in a ‘bright’ color. The problem is how to do this when the desired object is under others. I need the whole selected object to show, and I cant move it forward because its shape would change. If I could draw the scene and then redraw just the chosen object over it, I would be happy.

After you have drawn the scene and before swapping call

glDisable(GL_DEPTH_TEST);

Then draw the object with highlighted parameters, of course you will need to ensure that it has appropriate state such as transformation matrices when you draw the highlight.

Remember to enable the depth buffer for normal rendering.

I would suggest you use some sort of wireframe, silhouette, or transparent rendering for the highlight or things may appear confusing.

Thanks!
I understand wireframe, but what do you mean by silhouette rendering and how can I highlight with transparent? This is a CAD-like modeling application, so I had been thinking of just coloring the selected object -perhaps red.