python使用pygame创建精灵Sprite


Posted in Python onApril 06, 2021

一 、精灵(Sprite),屏幕上的对象。精灵组是精灵的组合。创建空的精灵组对象:

精灵组可以对其中的所有精灵调用它们各自的更新方法(self.update)来进行更新,如位置更新、碰撞检测、冲突检测等:

all_sprites.update()

    精灵组可以对其中的所有精灵调用它们各自的DRAW方法(self.update)来绘制精灵:

all_sprites.draw(screen)

二、创建精灵

    1、创建精灵需要继承基类pg.sprite.Sprite。每个Pygame精灵都必须拥有两个属性: image和 rect

class Player(pg.sprite.Sprite):
	def __init__(self):
		pg.sprite.Sprite.__init__(self)
		self.img = pg.Surface((50, 50))
		self.img.fill(GREEN)
		self.rect = self.img.get_rect()
		self.rect.center = (215, 215)

    其中,rect有如下定位属性:

python使用pygame创建精灵Sprite

    其中,topleft, topright, center, bottomleft, bottomright为二元int元组,其余的为int。

    2、添加update方法:

def update(self):
	self.rect.x += 5
	if self.rect.left > WIDTH:
		self.rect.right = 0

    在游戏循环中,有all_sprites.update()。这意味着对于组中的每个sprite,Pygame将查找一个update()函数并运行它。

三、将精灵加入精灵组:

all_sprites = pygame.sprite.Group()
player = Player()
all_sprites.add(player)

到此这篇关于python使用pygame创建精灵Sprite的文章就介绍到这了,更多相关python使用pygame创建Sprite内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python如何为图片添加水印
Nov 25 Python
PyQt4实现下拉菜单可供选择并打印出来
Apr 20 Python
Python通用循环的构造方法实例分析
Dec 19 Python
PyTorch的深度学习入门之PyTorch安装和配置
Jun 27 Python
pytorch打印网络结构的实例
Aug 19 Python
Python高阶函数、常用内置函数用法实例分析
Dec 26 Python
Python读取表格类型文件代码实例
Feb 17 Python
哈工大自然语言处理工具箱之ltp在windows10下的安装使用教程
May 07 Python
Python读取xlsx数据生成图标代码实例
Aug 12 Python
用python写一个带有gui界面的密码生成器
Nov 06 Python
python 元组和列表的区别
Dec 30 Python
Numpy中的数组搜索中np.where方法详细介绍
Jan 08 Python
python 逐步回归算法
python 通过使用Yolact训练数据集
python生成随机数、随机字符、随机字符串
Apr 06 #Python
Django项目配置Memcached和Redis, 缓存选择哪个更有优势
Apr 06 #Python
PySwarms(Python粒子群优化工具包)的使用:GlobalBestPSO例子解析
python实现批量提取指定文件夹下同类型文件
Apr 05 #Python
python实现ROA算子边缘检测算法
You might like
PHP 开发环境配置(Zend Server安装)
2010/04/28 PHP
让你成为更出色的PHP开发者的10个技巧
2011/02/25 PHP
VIM中设置php自动缩进为4个空格的方法详解
2013/06/14 PHP
php 批量替换html标签的实例代码
2013/11/26 PHP
php查找字符串出现次数的方法
2014/12/01 PHP
thinkphp跨库操作的简单代码实例
2016/09/22 PHP
php 中phar包的使用教程详解
2018/10/26 PHP
微信小程序发送订阅消息的方法(php 为例)
2019/10/30 PHP
javascript 清除输入框中的数据
2009/04/13 Javascript
javascript event 事件解析
2011/01/31 Javascript
javascript垃圾收集机制与内存泄漏详细解析
2013/11/11 Javascript
Javascript常用小技巧汇总
2015/06/24 Javascript
Spring mvc 接收json对象
2015/12/10 Javascript
Bootstrap3学习笔记(三)之表格
2016/05/20 Javascript
JavaScript中的splice方法用法详解
2016/07/20 Javascript
node.js爬虫爬取拉勾网职位信息
2017/03/14 Javascript
微信小程序实战之上拉(分页加载)效果(2)
2017/04/17 Javascript
vue结合axios与后端进行ajax交互的方法
2018/07/06 Javascript
js+css实现红包雨效果
2018/07/12 Javascript
vue2使用keep-alive缓存多层列表页的方法
2018/09/21 Javascript
JSX在render函数中的应用详解
2019/09/04 Javascript
Python中字典创建、遍历、添加等实用操作技巧合集
2015/06/02 Python
Python第三方库的安装方法总结
2016/06/06 Python
Python定时任务sched模块用法示例
2018/07/16 Python
Django之编辑时根据条件跳转回原页面的方法
2019/08/21 Python
安装完Python包然后找不到模块的解决步骤
2020/02/13 Python
解决python3插入mysql时内容带有引号的问题
2020/03/02 Python
Python实现自动签到脚本功能
2020/08/20 Python
介绍一下ICMP(Internet Control Message Protocol)Internet控制信息协议
2016/11/26 面试题
学习型班组申报材料
2014/05/31 职场文书
2014年业务员工作总结范文
2014/11/17 职场文书
幼儿园家长工作总结2015
2015/04/25 职场文书
人民的好儿女观后感
2015/06/18 职场文书
2016新党章学习心得体会
2016/01/15 职场文书
如何写好开幕词?
2019/06/24 职场文书
ubuntu下常用apt命令介绍
2022/06/05 Servers