
Pygame 学习笔记
文章平均质量分 72
Pygame制作游戏的模块,超详细的学习笔记
Leleprogrammer
python。。
展开
-
【Pygame 学习笔记】8.精灵
上面这行代码用到了pygame.time.set_timer方法,传入两个参数,第一个是事件,第二个是毫秒数,表示从这行代码开始,每运行多少毫秒触发一次事件,我们这里设置为700,也就是每700毫秒触发一次创建气球的事件,接下来我们在listen中进行事件的监听,在for循环事件遍历中添加这段代码,当程序捕捉到这个事件时,就向self.balloons精灵组添加精灵,用到了add方法,传入的参数就是我们精灵类的一个实例化。再运行程序,可看到,气球就正常地缓缓下落了,控制台输出的帧率,也是非常的接近120。.原创 2022-07-19 15:35:00 · 1596 阅读 · 0 评论 -
【Pygame 学习笔记】7.事件
从前面的6篇学习笔记中,我们不难发现,我们总要在Game中写入listen事件监听方法,这一篇学习笔记,我们来深入学习Pygame的事件监听需要使用到的pygame常量。这里,我把一些常用的pygame事件常量和用途总结成如下表格,供大家学习参考(对应的数值不同的版本可能会不一样,我的pygame版本是2.1.2)返回一个bool值的序列,表示键盘上的每个按键的状态,使用键常量值来索引数组,值True表示被按下。返回一个整数,表示所有修改键的位掩码,使用按位运算符,可以测试是否按下了特定的修饰键。.....原创 2022-07-16 16:02:22 · 682 阅读 · 0 评论 -
【Pygame 学习笔记】6.Cursor 鼠标光标
注意,这四种光标都是由一个元组组成,元组中是若干个字符串,我们把字符串也看成数组的话,它就是一个二维数组,所以set_cursor后面传入的第一个元组就是这个“二维数组”的大小,可以用len方法和索引,直接查看这些元组,自己也可以像它一样,创建自己的光标。Pygame支持黑白光标(位图光标),以及系统变体光标和彩色光标。这次,我们来学习Pygame中对光标的操作pygame.cursor。该模块包括几个标准光标,这些光标的参数都存储在一个元组中。沿着xy坐标拖动窗口时的光标(处于窗口角落时的光标).....原创 2022-07-16 15:05:18 · 982 阅读 · 0 评论 -
【Pygame 学习笔记】5.rect对象的碰撞检测
rect还有一些检测碰撞的方法collidelist,collidedict等等,collidelist传入一个列表,列表中是多个rect,collidedict传入rect的字典,也差不多,但是不会特别常用,这里就不讲解啦~然后进行碰撞操作和检测碰撞边缘的操作,检测碰撞边缘很简单,使用rect自带的一些参数与窗口的一些长宽进行比较即可,然后将速度设置为它的相反数。首先,是rect与点的碰撞,用rect自带的colliderect函数,返回值为bool。这一次,我们来学习rect对象的碰撞检测。...原创 2022-07-16 14:07:01 · 2905 阅读 · 0 评论 -
【Pygame 学习笔记】4.Transform 图片的操作
上一篇文章,我们讲解了如何导入图片并绘制到屏幕中,这篇文章,我们趁热打铁,继续深入学习如何用pygame的transform对图片进行各种操作。这篇文章需要的资源如下:0.png Sky.jpg给出Pygame基本框架代码,这篇文章将在这部分代码的基础上做更多操作首先,我们来学习如何对图片进行放大缩小制作一个游戏,我们需要的素材可能与我们需要的大小不同,最常见的就是背景图片不符合窗口大小,这个并不难解决,我们只需要对图片进行缩放即可,我们要将刚刚提供的Sky.jpg绘制到屏幕,但是大小不同,无法填满原创 2022-07-08 14:53:50 · 2312 阅读 · 0 评论 -
【Pygame 学习笔记】3.导入图片并绘制
上一篇文章,我们讲解了如何用Pygame绘制图形,这篇文章,我们来讲解Pygame如何引入图片这篇文章需要用到的素材:0.png我们创建一个resources文件夹,处于python文件的同一目录下,将图片存储于该文件夹中。 先给出Pygame框架的基本代码首先,我们要创建一个path常量,指向相对路径下的resources文件夹Game类初始化函数中,导入这张图片,存储与self.bg中,存储图片用到了pygame.image.load方法,传入图片路径,返回surface对象self.原创 2022-07-08 14:11:52 · 4284 阅读 · 0 评论 -
【Pygame 学习笔记】2.绘制图形
上一篇文章,我们已经创建出如下窗口 这篇文章,我们要优化一下窗口,设置它的窗口标题,并在窗口中绘制一些图案设置窗口标题,用pygame.display.set_caption()函数,传入一个字符串参数,示例如下:然后,我们要将窗口填充颜色,我们的窗口是self.screen,所以,用surface对象自带的fill方法,里面传入一个列表或元组,其中的三个元素分别为rgb对应的数值,为0到255之间的整数或浮点数,示例如下:所以,根据上一篇文章的代码进行增改,得出代码如下:运行效果: 接下原创 2022-07-07 14:09:55 · 1798 阅读 · 0 评论 -
【Pygame 学习笔记】1.初步搭建Pygame框架
欢迎来到Pygame学习笔记专栏,这是专栏的第一篇文章,从这篇文章开始,我们将深入地学习Pygame!今天,我们来学习如何搭建Pygame框架,我们使用类和对象的方式,这样代码更有条理,更容易规划!首先导入模块,我们需要pygame,还要pygame中的一些常量,也就是pygame.locals,sys用于退出程序定义一个类Game,用W和H存储宽高数据,为什么要用变量呢?因为我们设计一款游戏的时候难免要更改一些参数,比如窗口大小等等,如果我们使用绝对坐标的话,改变窗口大小后,很多东西都要重新去调整,原创 2022-07-07 13:28:12 · 1163 阅读 · 0 评论