Roughly speaking, there are three ways to start game development
1) Building your own game engine from scratch
2) Modding existing games
3) Picking an existing game engine and developing game with that
For me, option #1 seems terribly lot of work. If you are a solo game developer I think this option is not possible: it simply takes too much time just to create the game engine – not to mention the actual game development.
Option number #2 is fine, but the business opportunity is minimal: there aren’t many developers who have made modded an existing game and sold that. Counter Strike and Battlefield 1942 have had successful modders. I think modding is a good playground and a very good place to prove your skills, but to make actual business out of modding might be difficult.
For beginner (and advanced) game developers I recommend checking existing game engine. There’s a big list of game engines at DevMaster.net and I recommend taking a look at them. Very popular choices are OGRE, Torque and Blitz3D.