从事游戏开发怎么入门

首先,题主要做的是学好C++,为什么这么说呢?因为不管是现在的图形引擎(如OpenGL)还是游戏制作引擎(如Cocos2d-x)都是把C++作为主力语言的。

那么,我就先推荐几本C++的入门书籍吧:

C++Primer中文版(第五版)(豆瓣)

C++程序设计教程(豆瓣)

数据结构与算法分析(豆瓣)

Effective C++ (豆瓣)

Effective C++(豆瓣)

楼主可以按照顺序依次看下来,由于都是我看过的书,我可以完全保证这些书的质量!

接下来,楼主可以去 Problems|LeetCode OJ,Programming problems and Competitions::HackerRank  这些网站刷一些算法题,毕竟光说不练肯定是不行的 =_=。

接着,摆在题主面前的是两条不同的发展路线

  • Gameplay Programmer(游戏型程序员)
  • Graphics Programmer(图形程序员)
Gameplay程序员适合游戏策划紧密合作的一种程序员,他们会编写游戏中的主要逻辑,为策划提供关卡编辑工具,第一时间测试并玩到最新的游戏。

由于Gameplay主要集中于游戏逻辑的编写,在这一块,我的经验是最好从使用一个游戏引擎开始,考虑到你的C++和程序员背景,推荐你使用Cocos2d-x这个游戏引擎,下面是这个引擎的网址。

Cocos2d-x

游戏逻辑部分,你需要理解游戏中的场景管理,资源管理,状态机,AI和网络这些模块的编写。具体的操作可以查看我的这个答案:

学Cocos2d-x,需要掌握多少C++知识?大概多久可以做出一个游戏

另一种是Graphics Programmer,或者说是Engine Programmer,他们是给程序员写程序的程序员(有点绕口啊=O=)。这部分你需要学习的是OpenGL和ORGE等等

首先,你要学习的是OpenGL,首先我们要看的当然是这个红宝书了!OpenGL编程指南(原书第7版)(豆瓣)  

然后,就是读一些OGRE的源码了,国内的许多“自研引擎”就是通过ORGE做出来的,所以,作为一个Graphics Programmer读这个引擎的源码是非常必要的

最后呢?我们不管是当那种程序员,我们最终都是要做出项目的。

如果你是图形程序员,那么最好的项目就是,自己做一个游戏引擎

如果你是Gameplay Programmer,那么最好的项目j就是,自己做一个游戏项目

比如说我最近做个一个Demo类型的游戏项目:MrNerverDie/Four - GitHub  MrNerverDie/Four · GitHub

你可能感兴趣的:(从事游戏开发怎么入门)