我们第一课讲了,游戏的运行通俗原理,有兴趣的同学可以先看看。
(资料图)
那么接下来,我们简单介绍下pygame这个包以及它开发的基本架构,这样大家心里有个数,特别是开发架构,掌握了的话,就会容易明白,我们的基本内容都是依赖于这个架构的。
pygame是一个利用SDL(c语言编写)库的写的一个游戏库。
SDL呢,全名Simple DirectMedia Layer,是一位叫做Sam Lantinga的大牛写的,据说他为了让Loki(致力于向Linux上移植Windows的游戏的一家公司,可惜已经倒闭)更有效的工作,就编写了这个库。(果然是大牛,随手写的库就能让我们用那么久)
那么游戏的基本流程是什么,说白了就是下面这个事情:
检查玩家输入(事件)
判断元素间有无冲突(比如子弹碰撞、碰到补给、碰到怪物等)
根据信息绘制屏幕上的元素
重复1、2、3步骤
那么基于这个pygame帮助我们来处理这些:
1. 绘制图像(以及播放声音)
2. 检查玩家输入(键盘、鼠标事件等)
3.提供有用的工具,如碰撞检测(collisions),文本、计时器。
另外还提供了简单的游戏开发工具,但是没有复杂的功能,如果你想要开发3A大作,像GTA、战地等游戏,应该去学习更复杂的引擎(虚幻,Unity等),这些就需要使用c++、c#等开发语言来开发了,不过,用来做一些横版游戏也足够了。
了解了这些,下一节我们就开始进入实际的编程操作吧。欢迎持续关注和点赞支持。