如果只是单纯想自己动手做一个游戏出来的,应该首先考虑非编程途径。比如PC和Mac上面都有一些gamemaker软件,可以帮助你理解游戏的制作过程。
再进一步的话,可以试试用jme或flash制作游戏。
再进一步的话,可以学习使用某种游戏开发库,常见的有:NDS的homebrewSDK、PSP的homebrewSDK、cocos2d(iOS游戏)、unity3d(iOS/android)、XNA(PC/Xbox)
可以考虑学习一下iOS或是Android游戏开发,门槛低适合小团队,而且现在处于资料充盈成熟的阶段。
Cocos2DGameDevelopment这本书就是讲iOS下利用Cocos2D引擎开发游戏的,所用的示例代码就包括一个弹幕射击游戏。在Android下也可以使用对应版本的Cocos2D引擎。这套引擎底层是OpenGLES,可以做出效率非常高的2D游戏,弹幕射击什么的完全足够。
iOS的话需要在C/C++基础上学一下Object-C,如果对C++的内存机制有了解的话这个不难。另外要注意的是iOS开发的设备门槛较高,最差劲也得有一台比较好的台式机+安装虚拟机下的iOS系统。
因为Xcode只能在iOS下完美使用,Windows下虽然也有方法搭建开发平台但是很麻烦而且缺乏很多优秀的配套工具,还有真机联调也不大方便。另外就是需要99美元的开发者账户,这是真机联调以及发布到AppStore的必须步骤。虽然成本较高,不过干得漂亮的话成本没准就能赚回来呢。真机调试的话一部iTouch4就可以了,二手iPhone4也不错。
Android则是类似于java,Windows下平台完全可以搞定,平台开放性也比较好,开发设备门槛低,较为自由。大家总有一两个人有安卓的设备,真机调试比较方便。另外Android的软件可能需要面对盗版与破解的狂潮,另外就是因为内存管理机制自动化,系统运行效率会比iOS软件要糟糕一些,这些可以根据游戏的规模来决定。