💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
很多同学问我学游戏开发应该看些什么书,我在这里抛砖引玉,给一份推荐表,希望大家共同提高。由于本人英文不太好,推荐的大部书籍都是国人编写的,有些经典的外文图书可能是翻译不好,我自己难以读下去,所以未能推荐。 ### 一、程序语言:工欲善其事必先利其器,游戏开发属于软件开发,因此学几门编程语言是必要的。 #### 1、C++:虽然目前电脑性能越来越强大,C++凭借其优异的性能,是游戏开发首选。当然C++因为功能强大,也是最难学的语言之一。 C++ Primer:经久不衰的C++经典图书,一本C++的百科全书,比较适合入门学习。由几位经验丰富的C++大师编著,其中包括几位C++标准委员会成员。 C++ Primer Plus:一本比较基础的C++入门图书,如果觉得上面一本比较吃力,那么从这本开始吧!COM本质论 Thinking C++:此书在某些方面比C++ Primer讲解要深入一些,有许多作者的独到见解,精通C++的必备图书之一。此书中文名是牛逼的《C++编程思想》。COM本质论 Effective C++:C++程序员必读的进阶图书,讲解了许多C++的使用技巧和方法,能够让你打开眼界,提升你的C++功底。 More Effective C++:此书是上一本的延续版本,也是不可多得的好书。COM本质论 Exceptional C++:此书是仿Effective C++的书,不过内容值得一看。 More Exceptional C++:同上。 Exceptional C++ Style:同上。 C++ STL:C++的标准模板库还是很有用处的,值得学一下。 STL 源码剖析:侯捷的大作,可以参考读一下,看看STL内部的实现机制。 C++ Template:模板是C++的高级技巧,多少还是需要了解一些,这本书通俗易懂,学习模板的首选图书。 boost程序库完全开发指南:boost号称C++的准标准库,功能强大,代码优雅,很值得学习,是C++进阶的参考书目之一。 #### 2、Lua:轻量级的精巧的脚本语言,很多游戏都选择它作为脚本语言,语法风格优美,数据结构强大。 Programming in Lua:前几年Lua只有这一本出版的书,lua开发人员几乎人手一本,本书能了解lua的大部分功能,但是有些高级的功能涉及不多,有些也没讲透,不过还是值得推荐! 云风的博客:云风应该是使用lua的大家,在他的博客上有不少lua领域的知识,很多都是在书本上找不到的,所以特别推荐一下,呵呵。  #### 3、Java:Java是世界上使用人数最多的语言之一,在游戏开发方面也颇有建树,特别是Android流行之后,在移动游戏开发领域大有前途。 > Thinking jave:C++编程思想的姊妹篇,布鲁斯.埃克尔的又一力作,java开发的圣典,精通java的必备图书之一。 java编程规范:作者James Gosling(Java之父),所以这本书我觉得你怎么也得读一下。对基础讲解的很不错。 Effective Java:作者是Java的第2号人物,目前是Google的Java老大,是James Gosling强力推荐的一本书。名字是不是和Effect C++很像呢?看名字应该是一本好书。 #### 4、Python:python和lua齐名,也是比较流行的脚本语言,大名鼎鼎的BIGWORLD就死使用它作为脚本开发语言,不过python本身有很强大的库,除了作为嵌入式语言,还能作为一门独立的开发语言。 > 简明 Python 教程:Swaroop C.H. 教授为Python初学者写的一本书。“如果你只会打字的话,那这本书就是给你写的。”这本书的网站上这么写道。本书相当初级,很多大学都讲其作为教科书。python初学者可以从他开始。 Python核心编程:Zed Shaw为初学者写的一本书,书内使用的是Python 2.6版本。本书也是python的入门级图书之一。 #### 5、Unity3D:Unity3D是一个开发平台,使用它可以很方便的开发跨平台的游戏程序。 > Unity3D游戏开发:国人编写的一本U3D的入门级图书,相当基础,用来练手是最合适不过的了,而且作者的博客很活跃,可以喝他直接进行交流。 #### 6、ActionScript3:随着网页游戏的盛行,逐渐成为当前炙手可热的游戏开发语言,不过我很少涉及AS领域,因此大家可以到网上找找相关的图书。 ### 二、游戏编程的核心技术:我们做游戏的,当然还需要学一些游戏开发的技术才行。 #### 1、DirectX:大名鼎鼎的DirectX技术,微软公司大力推荐的一套3D图形处理API,目前是世界上最流行的图形API。 Visual C++/DirectX9 3D游戏开发导引:这是我阅读的第一本D3D的书,可能不是最好的,但是的确是它把我带进了游戏开发的大门。DX开发的入门级图书。 精通direct3d图形及动画程序设计:这本书也是国人写的,很多人都说是翻译的DX文档,但是我认为这本书是关于DX最好的入门图书了,讲解比较清楚,例子丰富,堪称DX开发百科全书,DX的入门级碧波图书。 Windows游戏编程大师技巧:游戏界享誉多年的图书,自成体系,不过经久失修,内容太旧啦,不过他的一些算法和思想还是蛮不错的。 3D游戏编程大师技巧:虽然是上一本书的升级之作,但是内容还是比较过时,不过作者在此书里面开发一个完整的引擎,在3D算法和数学方面的部分还算不错。 3D数学基础:图形与游戏开发:3D游戏开发进阶的一个门槛就是3D数学,如果数学不好,很难学好3D,本书是将数学和游戏开发结合的书,同时还封装了一套3D数学的库,值得初学者学习。 #### 2、OpenGL:一套和DirectX齐名的图形API,优势在于跨平台,目前支持Windows,linux,Mac,IOS,Android等系统,目前安卓流行之后,它的使用就更广泛了。 > OpenGL编程宝典:OpenGL开发中著名的红皮书。 经典中的经典。目前已经出了多个版本了,学习OpenGL的必备图书。 #### 3、网络技术:在线游戏必然离不开网络,我没有发现特别经典的图书,只推荐一本对我很有帮助的书。 Windows Socket 网络编程:对Socket编程的更方面做了详细的讲解。包括IO模型以及多线程的一些内容。 ### 三、程序设计基础:看过武侠小说的都知道,厉害的武功还得匹配绝世的内功才行,设计思想就是程序员的内功。 #### 1、算法:算法是程序的灵魂,学好算法是成为优秀程序员的必经之路。 > 算法技术手册:这本书很薄,讲解了一些基础常用的算法,经常翻一下对自己很有帮助的。 程序员试用算法:这本书非常不错,对于日常开发中常用的算法都有阐述,并且有相应的代码辅助,值得常备在身边学习。 零基础学算法:这本书非常适合初学者,对常用算法有清晰的讲解,而且有相当数量的视频和PPT提供给读者,方便读者理解。 算法导论:本书是经典算法图书,但是我一直没有读完,感觉太厚给自己的压力太大,而且本书讲解了太多的算法基础理论,学术性质太浓厚,老是看的想睡觉,但是作为算法的经典图书,这里还是推荐一下。 #### 2、数据结构:如果说算法是建筑的设计图纸,那么数据结构就是构成建筑的基本组件。 > 数据结构(C语言实现):清华大学出版的此书,在很多大学都作为教科书来使用,非常不错。 大话数据结构:最近才推出的一本书,仿大话设计模式的思路,总的来说,本书还是值得一读的。 #### 3、设计模式 大话设计模式:本书通俗易懂,学习设计模式的入门级图书。 设计模式--可复用面向对象软件的基础:本书的作者是GOF(Erich Gamma 、 Richard Helm 、 Ralph Johnson、 John Vlissides),本书结合设计实作例从面向对象的设计中精选出23个设计模式,总结了面向对象设计中最有价值的经验,并且用简洁可复用的形式表达出来。 ### 四、计算机理论和基础 80X86汇编语言程序设计:汇编虽然使用越来越少了,但精通汇编一定是牛人,如果有时间和精力多学习一些还是很有好处的。 琢石成器--Win32汇编语言程序设计:本书是学习win32汇编的一本很好的书,示例很丰富,比学纯汇编要容易很多。 深入理解计算机系统:本书多次入围年度最佳图书,有时间阅读次数还是能学到很多东西的。 程序员的自我修养—链接、装载与库:本书是近年来国人写的最好的一本书了,对于编译和链接等程序底层技术做了很好的讲解。 COM本质论:COM本身的设计思想是很先进的,微软的多项技术都使用了它,本书讲解了COM机制和编程方法。 重构--改善既有代码的设计:本书是我近年来看过的最好的书之一,重构是程序员的一项重要技能,本书将告诉你如何进行重构,如何将重构做好。 Window程序调试:讲解了widnow程序的调试思路和方法,调试是程序员的一项基本技能,本书会帮你提高这方面的能力。 人工智能:本书对神经网络、遗传算法、启发式搜索、状态机等AI命题做了详细的讲解。有精力可以看看。 软件工程:软件工程和程序员有这密切的联系,多看看软件工程理论的理解和互相实践,能扩展视野以及提高开发效率。 高效程序员的45个习惯:此书前面部分非常好,看完此书能够明显提高开发效率和改善工作习惯。 Win32多线程程序设计:本书是侯捷的大作,对于多线程编程讲解比较好。 正则表达式必知必会(正则表达式经典著作):正则表达式是一项基础的技术,对程序员的帮助很大。 ### 五、数据库相关 Mysql核心技术手册:本书对MYsql的各方面都做了详细的讲解,是一本很好的参考书。 SQL查询初学者指南:关于SQL查询的入门级图书。>