第6讲 | 从0开始整理开发流程
蔡能
该思维导图由 AI 生成,仅供参考
在第一模块的基础知识中,我已经讲过开发一款游戏需要的一些背景知识。对于 2D 游戏和 3D 游戏的区别、从程序到美术、从 2D、伪 3D 到 3D 等方面,我都进行了逐一地阐述。除此之外,对于任何类型的游戏开发都非常重要的三个概念:游戏引擎、底层绘图接口、地图编辑器,我也进行了一些我个人的解读。
有了这些背景知识,这一节,我来带你整理一下整个游戏开发流程以及流程中所需要的工具。
1. 选择开发环境
我们默认是在 Windows 环境下进行开发,至于是什么版本的 Windows 不需要做更多地阐述,你愿意用什么版本就用什么版本,因为几乎所有流行的 Windows 环境都能进行编程工作。至于我为什么选择 Windows 环境进行开发,那是因为:
首先,在 Windows 环境下,拥有比较方便的调试工具。不管是 Python 脚本语言还是 C/C++ 语言,都可以使用图形界面进行调试;
其次,Windows 下的 IDE 开发环境也比其他平台更多,你拥有更多的工具可供选择。另外,在开发游戏的时候,你可以选择 OpenGL、DirectX 或者 SDL 等图形库进行编程。作为游戏开发,DirectX 几乎是不可或缺的标准,而我在第四节讲述底层绘图接口的时候说过,它是由微软提供的游戏编程接口,在 Windows 下提供了更为方便的底层调用。
除了 Windows 外,Linux 平台的图形显卡驱动几乎是不完善的,无法发挥显卡的最大优势。苹果平台又一家独大,开发人员只能为其定制专一的代码,开发难度比之 Windows 就大了不少。
2. 下载脚本工具
在开发过程中,我们需要用到 Python、Lua 或者 Ruby 等脚本工具。我们可以直接用 Python 或者 Ruby 开发简单的游戏模块的 Demo。由于脚本语言代码的简单和高可读性,所以由脚本语言入手,进行早期示例的代码剖析,是一个不错的选择。
Python 我们可以从 python.org 下载,Lua 我们可以从 lua.org 下载,相应地,Ruby 也可以在 ruby-lang.org 下载。为了考虑兼容性,Python 建议使用 2.7.x 版本。Lua 下载最新的版本即可。Windows 下 Python 的源代码编译并不方便,所以建议下载 MSI 安装包,直接安装即可。因为之后我要使用 Pygame 进行示范,所以建议你使用 32 位的 Python 版本。
3. 选择编程语言版本
在开发的过程中,一定会用到 C/C++ 语言。
如果你要使用 VC++ 的话,会涉及购买、安装和配置等情况。为了使这个专栏的内容尽量简洁、可用,我建议使用 Windows 下,移植版本的 GCC 和 G++ 进行编译(也就是 MinGW 移植版),GCC 版本为 4.2.x 或者以上版本。有人说这些版本太老了,我认为,初学阶段,版本越新,意味着你需要知道的编译器内容和编译器开关就越多,因此建议你选择较为稳定的 4.2.x 或以上版本。
对于 C++ 而言,我们也不需要用到最新的 C++ 标准,比如 C++11 等。对于 C 语言,我们默认使用 C89 或者 C99 都是可以的。简洁、高效、显而易见,是我一向遵从的原则。
4. 下载编译器
关于 C/C++,你可以去 MinGW 官网下载 4.2.x 版本。当然如果你希望使用其他更新的版本也不是不行,你可以直接下载安装器,来获取编译器的版本。下载地址是这个:https://sourceforge.net/projects/mingw/files/Installer/
你也可以按照你的需求定制下载。如果要成为完整的编译器,必须下载这些内容:
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
本文介绍了从零开始整理游戏开发流程所需的基础知识和工具。作者建议在Windows环境下进行开发,因为其拥有方便的调试工具和丰富的IDE开发环境。读者需要下载Python、Lua或Ruby等脚本工具,并选择C/C++语言版本。建议下载MinGW官网的4.2.x版本,并选择合适的IDE进行开发。文章详细介绍了如何测试编译器的运作,以及如何编写Python代码并进行测试。此外,文章还介绍了专为Python开发的游戏库Pygame,以及如何下载和安装。总的来说,本文为读者提供了游戏开发流程的基础知识和工具选择建议,为初学者提供了清晰的指导方向。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《从 0 开始学游戏开发》,新⼈⾸单¥59
《从 0 开始学游戏开发》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(28)
- 最新
- 精选
- 艾尔欧唯伊.a后缀不是Linux下的静态库文件么。。。win下是.lib吧?
作者回复: MinGW是gcc的移植版本,所以编译出来的是.a文件
2018-06-1134 - 叶Da老师我想请问一下vc++和vs有何区别
作者回复: VC++是编译器,VS是IDE
2018-07-152 - 梦阳身边没有Windows电脑,在Mac上没办法follow这个课程了吗?
作者回复: 有python就可以
2018-06-202 - 川杰你好,请问IDE为什么不选用visual studio2017社区版(免费)?它继承了c/c++和python,并且功能强大。
作者回复: 各人喜好,并不强制
2018-06-172 - 我叫JB为何还会用到Python2呢,Python3入的门,感觉Python2和Python3的很多库都不一样,改来改去很麻烦Ծ‸Ծ
作者回复: pygame有3的包,但大量用户还是在用2,为了照顾广大用户所以选择2
2018-06-081 - 茂陵刘郎秋风客必须要32位?
作者回复: 不是必须,为了广大兼容性,所以考虑使用32位,和64位并不冲突
2018-06-071 - 野山门很喜欢这个游戏专栏,受益非浅。 Qt的绘图引擎好像也很不错,跨平台,有没有这方面的使用案例和分析?
作者回复: 本次教程没有涉及
2018-06-071 - Geek_dx老师,问一下,如果在window上开发,如果打包,最终怎么保证要在iOS系统上运行?
作者回复: 只能开发iOS的版本
2020-07-28 - 袁去病自然学派Lua静态库,完全不知道怎么找……解说不详尽呢
作者回复: 不知道怎么找的意思是编译器找不到?还是IDE设置?
2018-07-12 - 淡看烟雨_什么叫绑定实现?前面课里不是说pygame包括了对SDL的封装吗?如果绑定是指使用SDL类库的功能,直接调用sdl相关modules不就可以了吗?
作者回复: pygame封装了sdl,直接使用sdl模块也可以,就看你用不用pygame了。
2018-06-13
收起评论