Hi,
I would like to create a virtual 3D world. I am familiar with SDL and 2d graphics programming. I am experienced with C++ and I know a little Java (I have enough programming experience to learn a language quickly).
I am familiar with the traditional game loop:
Game game;
game.Initialize() // initialize all variables
while (game.Running())
{
game.HandleEvents(); //get input
game.Update(); //handle movement/time features
game.Draw(); //redraw screen
}
game.Close() //clear surfaces/textures and quit API of choice
Is OpenGL the best option I have for learning 3D programming?
Once I have a small virtual world and a character + camera, I'll worry about networking it, I am more concerned with the actual 3D programming using the API first in a single player environment.
I know there is Direct X, but it is not platform independent.
OpenGL is compatible with many Operating Systems.
I know there is also Java 3D, but I am not sure if that is a dead technology.
Your input is appreciated!