I've decided to start making graphical games. My language of choice is C++ and the only game I've made so far was a text based game based on Hunt the Wumpus which taught me fundamentals of game loops and robust error handling.
I now think I'm going to move onto a version of Tetris. Obviously moving from text-based to graphical programming is a big leap so I want to make the right decision when it comes to choosing an API. I've done some research and have narrowed the choices down to...
- DirectX (using DirectDraw)
- OpenGl
- Ogre
My main questions are:
1) Will learning one API hurt me further down the road if another becomes much more popular?
2) I've looked around questions on stackoverflow and some basic information on google and have found a lot of comparisons of DirectX and OpenGl. I've gleaned that the main difference is that OpenGl is cross-platform and DirectX is not. I've also seen people recommend Ogre because it's "easier" to use, but that just loops back to Question 1.
Am I missing any crucial information from what I described above?
3) What would you recommend, and suggestions of other API's are definitely okay.
4) Any other info regarding what to expect when it comes to API programming, etc.
Thanks.