The way I make games is to create them in Delphi which has a very nice and user friendly IDE but at the same time ensuring that my code will compile with FreePascal. This allows my games to be cross platform while letting me code in the more user friendly developent environment.

If you are just starting off with game development I would strongly suggest that you do NOT start with just the DirectX or OpenGL header files. I've been making games for over 5 years and I still dont understand the various header files.

Start with a component set that will allow you to make games easily. My suggestins would be UnDelphiX , Asphyre as suggested above or S2DL which are similat wrappers for SDL.