游戏开发图书推荐--我读过的技术经典图书

很多同学问我学游戏开发应该看些什么书,我在这里抛砖引玉,给一份推荐表,希望大家共同提高。由于本人英文不太好,推荐的大部书籍都是国人编写的,有些经典的外文图书可能是翻译不好,我自己难以读下去,所以未能推荐。

一、程序语言:工欲善其事必先利其器,游戏开发属于软件开发,因此学几门编程语言是必要的。

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查询的入门级图书。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏PPV课数据科学社区

【学习】1月份推荐给程序员们的技术书书单

时光飞逝,不知不觉,微信君已经和小伙伴们走过了2014,感谢你们的支持。小编会在2015年加倍努力,与你们一起分享好书。 2015年,首月,好多技术书的付印计划...

39210
来自专栏跨界架构师

[译文]Domain Driven Design Reference(六)—— 提炼战略设计

  提炼是是一种分离混合物成分的过程,以提取出一种使其更有价值和有用的形式。模型是知识的提炼。随着每一次重构的深入,我们抽象出领域知识和优先级的一些关键方面。现...

952
来自专栏iOS开发日记

你知道在iOS开发的工作中为什么有人4k有人40k吗?

  如果你有志于将iOS开发作为职业,或者已经是一位iOS开发者,那么你应该听说过唐巧的名字。唐巧,2012年从网易有道离开参与创业, 目前是猿题库iOS高级研...

4519
来自专栏Android 研究

PMI-ACP 敏捷项目管理5——评估价值与规划价值

业务价值可以通过商业论证进行评估,通常会通过常用的财务术语进行评估。商业论证开发是敏捷项目管理中重要的起步点。商业论证是对项目的构想、目标、达到目的的策略、重大...

1882
来自专栏Android群英传

Google IO——你在输入输出些什么

1082
来自专栏大数据钻研

更快学习 JS 的 6 个简单思维技巧

当人们尝试学习 JavaScript , 或者其他编程技术的时候,常常会遇到同样的挑战: 有些概念容易混淆,特别是当你学习过其他语言的时候。 很难找到学习的时间...

47712
来自专栏老九学堂

这可能是最全的编程入门指南

为何要学编程 乔布斯说,「每个人都应该学习编程,因为它教会你思考的方式」。 我们学习编程,是不一定要成为程序员的。就像每个人都应该学习法律,但不是都要成为律师;...

3346
来自专栏编程

新手如何学习UG,初学UG编程的快速…

新手如何学习UG,初学UG编程的有什么快速入门方法。也许你学习软件时不知道该从哪里着手学起。这里,远歌总结以往学习UG编程时的经验。告诉新手,学习时,一般先学习...

2179
来自专栏翟志军的专栏

即将三十,我不敢说我精通任何一项技术

30岁后真的就要转管理?凭什么?回顾自己的技术成长之路,具体技术真心没有一样敢说精通,对于一个像我这样工作6、7年的人来说,实在有些难以启齿。

1.4K0
来自专栏CSDN技术头条

谷歌人工智能算法RankBrain运行原理解析

近日,新闻爆料说谷歌正在使用一个机器学习人工智能系统“RankBrain”来对搜索结果排序。想知道它的工作原理以及如何在谷歌排序系统上运行吗?以下是我们对Ran...

19310

扫码关注云+社区

领取腾讯云代金券