关于游戏开发(转)2

我常常被人问及一个只有一点编程经验或一点也没有的人如何在这条路上起步呢. 在这之前,我会尽我所能地对提问者进行一对一的解答和帮助. 然而如今看来已不可能了,由于当问题如潮涌般地涌向我时,我几乎都驾驭不住. 所以, 我想是时候将我全部的意见和建议编辑成册,为你们提供一个参考.



本文旨在帮助那些想制做本身的游戏,却苦于无门的人们. 事实上,我已经将个人读者群划分红编程经验值为0的一类了. 此文主要讲述游戏编程及游戏设计方面的问题, 不关游戏的艺术效果制做的事. 关于游戏市场运做方面的东东,此文我不会说起,由于市面上关于此类的信息资源已如洪水猛兽般泛滥成灾了. 但对于在制做游戏过程当中你所遇到的方方面面的问题,我都会作出简单概述. 最后,请不要将我为你铺的这条通往制做游戏之路当作是惟一的,甚至是最好的. 尽管它为我和其余入门者曾作出"不朽"的贡献.



选择一个编程语言



开始学习制做游戏的时候,你所要作的第一件事就是选择一个编程语言, 其选择多多,包括Basic, Pascal, C, C++, Java,等等. 固然,关于哪一种语言对初学者来讲是最合适的问题,其争论也甚为激烈. 我建议你们能够看看John Hattan's 的大做"What Language Do I Use?", 其中说起了很多当前甚为流行的编程语言.



我首先推荐c和c++. 有些人会说:"这个语言也对初学者来讲过高级了吧", 但你看,我自个就从这种语言的起步的,所以对于这种说法,鄙人不敢苛同.另外, C, C++语言在市面上使用甚广,因此你能比较容易地获得参考资源和各类帮助.固然问题的关键并不在于你是否真的从学习c和c++编程语言开始你的游戏制做涯,事实上,不管你学会了哪一种语言, 学习另外一种就是小菜一碟了.不管如何,若是你决定从C, C++开始的话,那千万要肯定在你开始学习面向对象(object-oriented)的编程方式以前你已经掌握了面向过程(procedural)化的编程.

当你雄心勃勃地开始学习C, C++时,却沮丧地发现它太难了,这时你能够回头看看有什么更为简单易学的语言,例如Basic 或Pascal, 其实这也无伤大雅, 没什么难为情的.但我所强调的一点就是若是你坚持学习C, C++,并且找到了好的学习资源的话,学会C, C++也是水到渠成之事.



你的下一个问题恐怕是:我该怎么学习C, C++呢. 我很乐意回答这个问题. 最好的方式就是加入一个学习班,这样的话你就有老师了,他们会为你排疑解惑,并帮助你提升业务水平, 老师所布置的家庭做业能让你将你学习到的东西应用到实践中.



若是你没有条件上学习班的话,那第二个办法就是买些好书了. 我建议你到当地的书店走走,并大体浏览一下书的内容介绍,选中一本你肯定能够看懂的再买, 掌握必定的知识后,你就能够买一本更为高深点的书, 那时你也知道你应该买什么书了.



说到这里,我想稍作停顿,由于我想谈谈关于经济承受力的问题----据我观察,这但是广大入门者,特别是青年游戏开发者都广泛关心的问题, 他们大多数对于购买课本或别的学习资料而感到囊中羞涩. 不过不用担忧,首先仍是有不少免费资源能够利用嘛,像当地的图书馆呀,还有Macmillan Computer Publishing网站, (网址是: http://www.mcp.com/personal), 在上面你可下载各类各样的编程书籍. 不过,若是确实想成为一个编程高手的吧,那你就得为你的事业作出必要的投资了.由于不管你采用何种途径,都离不开钱呀!(固然,除非你尝试非法途径.)



其实网上也有很多的学习C, C++语言的辅导资料,但依我之见,那些辅导资料最好做书本学习的一个补充, 而不该该成为你惟一的学习资源.



选择一个合适的编辑器



你写的程序,也叫作源代码,可用一个文本文件保留起来,你甚至能够用 “写字板(NOTEPAD)”写C, C++程序.但若是你要把它转化成一个可执行文件那就得费些周折了,这时你可使用编辑器.



市面上有很多各类各样的编辑器, 其中免费的也为数不菲. 但选择一个你顺心顺手的相当重要. 免费的编辑器有一项好处就是你能够拿来试试,看看哪款最趁心如意.但绝大多数免费编辑器不是 “先天条件不足”,就是 "后天发育不良"(意思是缺陷不少), 远不如商业版的.并且全部的商业版的编辑器都在测试阶段,价格不高,并且其功能也与正版差不了多少.



总之,编辑器的选择取决于你的经济承受力,以及你文件运行的操做系统编及开发平台.若是你打算在Windows上开发的话,那我强力推荐Microsoft Visual C++, 它有强大的开发环境,能让你的开发工做如鱼得水般的自如.另外学生朋友能够以一个低廉的价格购买到它.但若是你想用dos开发的话,你最好使用DJGPP,可免费获得.



选择一个合适目标平台



Windows: 若是你想在游戏领域中成为专业人员,或你但愿你开发的游戏会有众多的玩家光顾,那你就选择Windows吧,由于绝大多数的玩家都使用这玩意儿,它也不会那么快就被逃汰的.DirectX是种能直接操做硬件的开发库,也就是说有了它,你能够编写高性能的游戏.



Dos: Dos曾是游戏开发平台的主流,但它已经是昨日黄花了.尽管很多Dos迷仍然用它进行开发,但现在已没有一款商业游戏是由它作出来的,而它时日将随着微软对它的背弃而愈加显得日薄西山,穷途末路.因此若是你才开如开发游戏的话,仍是别选Dos为妙,若是你选了的话,那最好适可而止.



Linux: Linux与UNIX有着剪不断,理还乱的渊源,近来愈来愈得人心,其缘由众多,包括它的性能稳定性,价格合理以及反微软阵营等.虽然它的用户群还不是很大,但它的巨大的发展潜力使得它成为目标平台之中的合意之选.



Macintosh:Mac有一群为数不小的忠实追随者,并且几乎每个我所知道的MAC狂热者都向我倾诉了同一个愿望,就是用MAC开发出更多更好的游戏.尽管我倒没有看到有不少用MAC开发游戏的参考资料,但我坚信未来会有的,所以也许MAC也是一个不错的选择呢.



Consoles: 游戏机的游戏市场巨大,所以它的发展潜力也不容小瞰.然而,在当前这个年代,以非商业模式去开发游戏机游戏是不合情理的,其原因甚多,一言难尽.但若是你如今在开发游戏机游戏的话,那你最好是在一家商业游戏公司工做。



开发好的游戏:



如今是时候让咱们具体讨论一下开发游戏的事了.为方便起见,我假设你用C/C++在WINDOWS上开发,不过你选择其它的开发工具或开发环境的话,我所说的也一样适用.



首先,在你开始考虑开始开发游戏以前,你得是一个玩C/C++的好手,你得懂得指针,数组,结构,最好还知道类,你得熟练地运用它们.若是万事俱备的话,那就开始制做游戏吧.



其次,别期望本文能面面俱到,教会你在开发游戏中全部知识,所幸的是,也没有必要,由于市面关于制做游戏的书可有很多,而网上诸如此类的辅导资料也数不胜数,好比gamedev.net就应有尽有.好了,下面就是我提出的几点建议:

选一本或几本适用的书:对于Windows初学者来讲,Tricks of the Windows Game Programming Gurus 网站但是一个很好的资源可供利用.另外,读透一本或几本教科书,并认真实践每一个案例.



在线的资料是很好的补充教材:它不但对开发知识分门别类,并且还涵盖了书本上没有的知识.



找高手寻救帮助:若是你在书上或网上找不到你问题的答案,那就在留言簿上留下问题,或在聊天室里问问别人吧,有不少热心肠的人都乐意为您效劳,OGDEV.NET就是一个很好的论坛.可是光"学"不行,还得"学以至用".先从开发简单的游戏开始,而后慢慢深刻.一开始的时候,你可选择独立学习,千万别忙着加入游戏制做团队,那样只会使你的学习进程"减速",而不是"加速".但一旦为本身武装了几个像样的小游戏,那就是你在大团队里一展身手了的时候了.c++

相关文章
相关标签/搜索