It’s normal to be confused by Win32. It’s pretty ugly in my opinion, but once you use it for a while, it becomes second nature to you. If you still don’t want to deal with win32, but still want to learn OpenGL (which is nice and easy to learn) you can use GLUT which is a platform independent windowing system.
For your other questions, I don’t think they can be answered. All api’s are geared for a specific purpose. If you want to learn a graphics API, try to learn several of them first them then make a decision with which one you want to stick with. Try out Direct3D, OpenGL, SDL, PowerRender, GDI, QuickDraw, and the hundreds of others out there. When asking people “Which api is the best to learn”, people will give you their opinion which may or MAY not include “biasness.” It’s best to check it out for yourself
I don’t know anything about console programming, though
You have kind of a open question, depends on what you mean by API for comercial market.
Lot’s of game API’s.
Most code is based on a custom writen 3D engines and other routines. You will find a lot of current games share a common Game engine which is maybe what you are thinking about.
You have like game API’s like Serious Sam engine, Quake engine, etc.
As for programming for most games C/C++ is the language of choice, so a good understanding of the language would be most important.
If you only want to write games for the PC then C/C++ and Direct-X API for Graphics, sound and input. Then maybe OpenGl API to support openGL rendering over Direct-X.
But would still use Direct-X for input and sound.
If you would like you program to run say on linux and Mac. Then you need to look at some crossplatform API, like SDL, FMOD, etc.
Originally posted by Krak: What API is used to make professional video games?
[This message has been edited by nexusone (edited 05-05-2003).]