The problem with game development on the whole is that the market is saturated with game development startups and corporations which develop for console first, then the PC market. Seeing how the games console market is so huge.
Game developers are (Usually unless they are getting ripped off) Highly paid individuals because they are extremely skilled programmers. Because games are difficult things to program, they need to be.
The problem comes from Microsoft. They ship the xbox 360 which you might have heard of and they also ship the directX api.
Now the cross platform api is opengl and while unlike directX, it is not a full multimedia api, it is much more powerful and easier to develop using (Apparently.) DirectX does not run very well on Linux. It can be done but using wine and not very well.
To develop games on the PC platform for Windows, the games are written using directX and the same is true for the xbox. Now Microsoft offers kick backs to game developers that use directX instead of opengl and over time game developers have accepted the directX api (Wrongly) To write their games.
Because they have chosen directX and directX is not a cross-platform api (Which is by Microsoft's design to lock vendors into their software technology, just as they did with Internet Explorer) Major game releases are very rarely cross platform.
http://blog.wolfire.com/2010/01/Why-you-should-use-OpenGL-and-not-DirectX
With Android and iphone (iPad) OSes supporting opengl games, opengl is becoming popular again and we will see many developers start to get it right and popular retail games will come to Linux in the future because of it but it will be a bit of a wait.
I would love to see google enter the games market, offer sponsorship to game developers and try to trounce Microsoft in that market using android. Googlebox, or Google playbox games console anyone?
I will not be surprised if that happens. Their appengine would be a perfect platform for it if they relaxed and made sane it's licensing terms.
I've always wanted to write a game, maybe an interactive puzzle game like monkey island, etc and if I get my skills a bit sharper using qt and ruby, I may well do. But it's just a thought right now.
Game programming is hard.


