Pygame:动画精灵 – 零基础入门学习Python085

Pygame:动画精灵

 

让编程改变世界

Change the world by program


 

截至目前为止我们已经学了 Pygame 的事件、图片的转换及移动、基本的图形绘制、透明度调整等内容,但距离我们真正的实现一个游戏还差一个环节:碰撞检测。在讲碰撞检测之前我们需要一个新的知识:动画精灵。

1

 

Nonono,不是说蓝精灵。我们说的动画精灵是指游戏开发中,那些赋予灵魂的事物,像前边的小乌龟。动画精灵的实现看似简单,实际不然。因为在真正的游戏开发中,远远不只有一个精灵,它们的数量随时都会发生变化(比如说敌人不断地出现,敌人不断地被消灭),它们的移动轨迹也并不是一样的,既然轨迹不同,那么肯定就会发生碰撞,所以我们的精灵还要支持碰撞检测才行。

 

我记得在若干年前,小甲鱼刚接触编程那会儿,网络上还很流行面向对象阵营和面向过程阵营的PK,大家各自阐述己方的优势,彼方的劣势,想想还是挺好玩的,只不过现在这类讨论确实是越来越少了。在此之前我们一直是用面向过程的思维方式在写代码:先载入图片,构造出一个小乌龟,然后对各种事件做处理,让小乌龟可以依照我们的想法去移动、去撞墙等等。我们一直做得很棒,代码也日渐完善。但是呢,这种思维方式有一定的局限性,就是当你的精灵一多,你就需要去花很多时间来思考大量重复代码的部署,然后你就焦头烂额了。所以,这节课我们会开始给大家讲讲面向对象的游戏开发思维是怎样的。

 

今天开始这几节课,我们通过带大家完成一个小游戏来学习新的知识,同时体验一个游戏开发的过程。这个游戏我取名叫“PlayTheBall”,中文名叫“玩个球啊”。代码量在两百行左右,但其中涉及到碰撞检测、异常处理、计时器、自定义事件、播放声音、替换鼠标样式、限定鼠标移动范围等新的知识点。

 

游戏介绍:

Get Adobe Flash player

 

…… 此处省略N多内容,具体请看视频讲解 ……

 


为您推荐

报歉!评论已关闭.