本书忠实地记录了作者十余年来对游戏编程的所思、所感、所悟。全书按照作者本人学习和实践的过程,带着读者从基础的计算机知识到高级的编程技术,从非常专业的汇编优化到非常实际的项目管理进行了一次游戏开发的全景探索。本书不仅适合游戏开发者阅读,也会给所有的开发者和程序爱好者带来启示。本书前言前言终于把整本书完成了,我几乎不敢相信能完成。陆陆续续地写了一年多,其中的辛苦恐怕只有写过技术书籍的朋友能够理解了。很早以前就有朋友跟我提过,好好写本书,把自己理解的知识传授给他人,于己于人都是颇为有益的事情。写作技术书是很困难的事,它需要作者厚积薄发,把自己多年的知识浓缩归纳,才能用简洁的文字表达出来。而知识的传授绝对不同于讲故事,文字究竟能表达出多少作者自己已经理解的,我个人觉得是很难拿得准的。先后有几个出版社的朋友来约稿,只是一直忙于项目开发,没有将其放在心上。直到《大话西游II》和《梦幻西游》两款游戏相继开发完毕,并取得了市场上的成功,我的工作也相对闲了下来。这时,我终于可以动笔来写这本书了。大家现在看到的这些内容,是我在一年多的时间里,断断续续整理出来的。看惯了国外严谨的技术书的读者,肯定会挑出许多毛病来。我几乎没有一章,把某个技术点由浅入深地阐述全面;也没有将游戏制作的某个特定领域分章断节,细细道来;它绝对是依照我自己的偏好来选材,甚至,这本书不能算是一本游戏编程的专门书,我把重点放在了编程领域,而不是游戏。我曾经对自己这本书的定位迷茫过。它看起来好像是一个大杂烩,整体的组织没有条理,细节的描述又不够彻底。终于有一天,我自己想明白了,得以心情舒畅地将之全部完稿。首先,这里记录的诸多技术问题都曾经启发过我自己,那么它们一定也能启发他人,必然会和一些心有戚戚的读者引起共鸣。而另一方面,我不敢随意对游戏开发,甚至软件开发中哪些方面更重要一些下出论断。虽然我自己有自己的理解,但表现于具体的文章上,只好将自己觉得会非常重要的部分多写一些(因为自己觉得这些重要,所以研究得也多一些),希望读者读到那些枝节要点却没有点明的时候,能够理解我的用意。其次,所有的基础知识都有前人留下的教导,和读者分享自己是怎样学到的足矣。授人以鱼,三餐之需;授人以渔,终生之用。大多数问题,如果把别的书中的章节生搬硬套过来,则是对我自己的精力和读者的时间的极大浪费。不以自己懂了什么就写出来给读者炫耀一番,是我后期删改书稿的重要原则。终其整本书,虽然参考之书籍、网站、代码众多,但我自己都一直坚持一个原则:建立在充分理解的基础上,再用自己的语言表达出来。我相信只有这样,读者才能够看到一个从独立思考角度获得的知识体系,凌乱中不失一缕联系。这样也带来许多遗憾。因为还有一些内容我在原计划里是想写的,它们对游戏软件的编写也是至关重要的,比如设计模式。可惜我在动手的时候,发现自己这些方面的修养在项目中用用还可以,离著书立说却差得很远,只好放弃。曾经年少轻狂。但随着时间推移,越发发现自己所知所见,只是沧海一粟。学得越多,越是不敢轻言所知。所以,希望读者相信,我是非常谨慎地来完成自己的第一本书的。孔子说过,无友不如己者。我真诚地尊重所有对本书提出批评的朋友。可以去我的个人主页(http://www.codingnow.com)留言发表你的看法,或给我发E-mail:cloudwu(a)gmail.com,我个人更倾向电子邮件这种交流方式。希望听到大家的声音。写书这件事情终归是告一段落了,我也将把精力投入到自己新的事业中去,或者很久都不可能再以这种形式将自己的技术人生做一个总结。身处当今热门行业中,可谓衣食无忧,而在国内的游戏制作圈子里混迹多年,业内也小有名气。而这些并非我去追求的,它们自然而生。这本书也一样,我没有刻意去追求表达些什么,也从没有想过本书会给我带来些什么。我现在是中国并不成熟的游戏制作行业中的一员,游戏给了我太多,我告诉自己需要做一点事情。分享知识和经验是我的义务,别无它。云风2005年5月23日晚于广州