As far as i can tell, C/C++ is the general route taken
to do alot of this stuff, it really depends on how your
resources (tutorials, etc) are done in, so follow that.
D3D vs OpenGL....OpenGL is portable but DX is a FAR-ranging
programming library, covering input, sound, music, mutiplay,
etc. Even the venerated Quake3 uses elements of DirectInput
to handle the keyboard/mouse aspect of the game.
---
PS what i've gotten so far is how to create and read X files
(no NOT the tv show) and some samples of code for music and
basic graphics, but yeah, this is one of those things you have
to hammer away at for awhile before you get anywhere.
Cheers all!