No, openGL only draws the objects, it is up to you to track and keep stored the position of each object.
Also up to you to check if two object are in the same space.
I am sure you have played a 3D game and at some point the 3D charactor has went into the ground or part of an object and you see the inside area’s that you normally don’t see. This is where the program has failed to keep the camera from looking at a wrong place.
Here is something that can get tricky, your camera and your ground’s XYZ can get rotated so that say the ground’Z is parallel to the camera’s X.
In respect to our camera.
Rotating camera around the X axis, is like moving our head up and down.
Rotating camera around the Y axis, is like moving our head from right to left.
Rotating camera around the Z, is like titlting your head to one side, but in the case of our camera we could do it a full 360 rotation.
Here is a example who how one may think about objects and each having its own XYZ or space.
If you are in say the star ship enterprise, and you are standing on the deck.
No matter how the ship turns or moves, your position on the deck of the enterprise stays the same in relationship to the ship.
Let take two starships the Enterprise and the Defient.
Each ship has a front, back, top, bottom, right and left side as does all objects in 3D space.
Let’s call the front of the ship -Z, the rear of the ship +Z, the top +Y, bottom -Y, right side +X and left side -X.
Now since each ship can move in any direction in space, at any givin moment the ships +Z could be moving along in any XYZ axis.
Example the ship moving from right to left across the screen, its +Z axis would be moving across the camera X axis.
I hope this helps a little.
[This message has been edited by nexusone (edited 10-15-2003).]