Object Selection using back buffer


I’m working on an application to render simulated human motion. One of the things I need to do is be able to select a sphere, translate its position, and write back the change to the file. Since all of the spheres are distict rgb values, I’ve been trying to do selection with the color values read from the back buffer (as described in Ch. 14 in the red book). The problem is, that when I try to do the selection, the color is read only sporadically…almost as if I’m drawing the spheres as a wire frame instead of filled in the back buffer. I still have no idea why this would be the case, since the rendering function does specify that polygons should be rendered with GL_FILL not GL_LINE. Any ideas why I might be having this bug? Thanks for any help you can provide.