All of it. :) The real question you should be asking is.. once you have a solid understanding of C++, which API's should you learn?
Well! Now that you've asked, I will tell you~ Most games these days use OpenGL or DirectX for their 3D games. For 2D games OpenGL and/or SDL is often used. I've been playing around with SDL these days and it looks promising for 2D game development.
Though really, high-end games add more obfuscation to these API's and use their own engines (which often have their own scripting languages). A good example is the Unreal engine.
Also if you're looking into mobile platform game development, Java is very useful to know/learn.