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的另外几种语言实现
Jan 29 Python
Python的math模块中的常用数学函数整理
Feb 04 Python
解决使用pycharm提交代码时冲突之后文件丢失找回的方法
Aug 05 Python
Python OpenCV读取png图像转成jpg图像存储的方法
Oct 28 Python
对python中list的拷贝与numpy的array的拷贝详解
Jan 29 Python
pyqt5 禁止窗口最大化和禁止窗口拉伸的方法
Jun 18 Python
Python箱型图处理离群点的例子
Dec 09 Python
python错误调试及单元文档测试过程解析
Dec 19 Python
Python版中国省市经纬度
Feb 11 Python
使用python求解二次规划的问题
Feb 29 Python
keras .h5转移动端的.tflite文件实现方式
May 25 Python
总结Python使用过程中的bug
Jun 18 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
thinkphp3.2.3 分页代码分享
2016/07/28 PHP
可兼容php5与php7的cURL文件上传功能实例分析
2018/05/11 PHP
自适应高度框架 ----属个人收藏内容
2007/01/22 Javascript
JavaScript脚本性能优化注意事项
2008/11/18 Javascript
childNodes.length与children.length的区别
2009/05/14 Javascript
jquery取消选择select下拉框示例代码
2014/02/22 Javascript
JavaScript 实现简单的倒计时弹窗DEMO附图
2014/03/05 Javascript
javascript弹出页面回传值的方法
2015/01/28 Javascript
javascript连续赋值问题
2015/07/08 Javascript
百度地图api如何使用
2015/08/03 Javascript
原生js配合cookie制作保存路径的拖拽
2015/12/29 Javascript
Nodejs多站点切换Htpps协议详解及简单实例
2017/02/23 NodeJs
JQuery EasyUI 结合ztrIee的后台页面开发实例
2017/09/01 jQuery
原生js封装运动框架的示例讲解
2017/10/01 Javascript
浅谈Javascript中的对象和继承
2019/04/19 Javascript
一起写一个即插即用的Vue Loading插件实现
2019/10/31 Javascript
使用preload预加载页面资源时注意事项
2020/02/03 Javascript
用VsCode编辑TypeScript的实现方法
2020/05/07 Javascript
Python实现微信公众平台自定义菜单实例
2015/03/20 Python
解决python删除文件的权限错误问题
2018/04/24 Python
Python爬虫实战之12306抢票开源
2019/01/24 Python
对python中的装包与解包实例详解
2019/08/24 Python
Python监控服务器实用工具psutil使用解析
2019/12/19 Python
python3实现从kafka获取数据,并解析为json格式,写入到mysql中
2019/12/23 Python
预订全球最佳旅行体验:Viator
2018/03/30 全球购物
哈萨克斯坦移动和数字技术在线商店:SatelOnline.kz
2020/09/04 全球购物
机械电子工程专业推荐信范文
2013/11/20 职场文书
旅游网创业计划书
2014/01/31 职场文书
家长建议怎么写
2014/05/15 职场文书
师德师风整改措施
2014/10/24 职场文书
2015年党员个人剖析材料
2014/12/18 职场文书
观看《筑梦中国》纪录片心得体会
2016/01/18 职场文书
掌握一个领域知识,高效学习必备方法
2019/08/08 职场文书
解决Jupyter-notebook不弹出默认浏览器的问题
2021/03/30 Python
html form表单基础入门案例讲解
2021/07/21 HTML / CSS
一篇文章带你学习Mybatis-Plus(新手入门)
2021/08/02 Java/Android