发布时间:2023-11-27 07:42:47 浏览量:104次
大家知道Python是做深度学习和数据处理的利器,在深度学习领域独占半壁江山。涌现出了众多的优秀框架,深受广大炼金术士们的喜爱。但是说到做游戏,看起来就有些心有余而力不足了,一般来说,大部分游戏开发人员都不会选择Python来开发一款游戏。但是其实Python本身也具有良好的游戏开发包,虽然并不代表Python可以成为游戏开发人员的主要选择,但是对于刚入门,想学习Python的同学来说,则可以通过开发一个小游戏,寓教于乐,深入理解Python面向对象编程的思想和方法,从而增强自己对于Python语言的驾驭能力。
同时也可以在实验室里,复刻一款小时候玩的经典游戏,把师妹代入游戏角色,从而有效提升师妹好感度。
好了,闲话不多说,提起Python做游戏的模块来说,那非Pygame莫属了。Pygame是Python类库里面专门用来开发、设计2D电子游戏的模块。具有良好的跨平台性、开源、免费,是一款不可多得的小游戏开发神器。
Pygame里面包括了绘图模块、声音模块、事件监听模块、输入输出模块、碰撞检测模块等。可以完整的完成一个2D小游戏的开发过程。
下面我们就来看一下pygame的使用流程。
一、安装pygame
安装pygame非常简单,在联网状态,可以直接使用
pip install pygame
来安装,或者自己下载与自己的python解释器对应版本的.whl文件手动安装。
二、使用pygame开发游戏
安装好了pygame之后,就可以直接使用了。
#首先我们引入pygame包
Import pygame as pg
#然后初始化
pg.init()
#创建游戏运行窗口
screen = pg.display.set_mode((600, 400))
# 设置游戏标题,
pg.display.set_caption("给师妹的新礼物")
# 设置背景颜色
screen.fill((255, 255, 255))
#随便在screen上画一条线
pg.draw.line(screen, (255, 255, 0), [1, 1], [255, 255])
#更新显示
pg.display.update()
# ========游戏开始页面静态效果==========
# 保持游戏运行状态(游戏循环)
while True:
# ===========游戏帧的刷新===========
# 检测事件
for event in pg.event.get():
# 检测到右上角关闭按钮被点击的事件
if event.type == pg.QUIT:
# 退出
exit()
写完这些,一个简单的运行窗口就出现了。运行效果如下:
当有了游戏窗口之后,就可以在窗口里面绘制自己想要的布景了。通常来讲,开发一个小游戏的时候,首先绘制布景,然后编写事件响应的代码,当主要游戏逻辑完成之后,还可以加上声音等要素,使得游戏更有趣味性。
三、pygame中常用的功能
1、加载音乐:
使用pygame.mixer.music.load() 可以加载一个音乐文件,加载之后用play()就可以播放音乐了。
2、显示角色:
在pygame里,动态物体都可以被称为精灵(spirte),如游戏主角、敌人、武器等等。在pygame时,精灵用Sprite对象来表示,使用时不需要实例化,而是继承这个类,然后按照需要写出自己的类即可。每个Sprite类都必须有两个属性rect和image。
3、加载图片:
可以通过image.load来加载要添加的背景图片,例如
im = pg.image.load(u"
C:/Users/Administrator/Pictures/3057吃瓜.jpg").convert_alpha(screen)
screen.blit(im, (70, 70))
4、事件监听:
pygame中支持很多事件的监听,如键盘、鼠标事件等。
例如if event.type == pg.MOUSEBUTTONDOWN: 语句可以监听点击鼠标的运作,全部的
有了这些基本知识,就可以开始进行一个小游戏的开发了哦。当然,只有这些基础知识还是远远不够的,在开发的过程中,要不断学习各种方法的使用,最终一定可以完成自己的作品哦。
喜欢本文的话,欢迎关注活在信息时代哦:)
热门资讯
探讨游戏引擎的文章,介绍了10款游戏引擎及其代表作品,涵盖了RAGE Engine、Naughty Dog Game Engine、The Dead Engine、Cry Engine、Avalanche Engine、Anvil Engine、IW Engine、Frostbite Engine、Creation引擎、Unreal Engine等引擎。借此分析引出了游戏设计领域和数字艺术教育的重要性,欢迎点击咨询报名。
游戏中玩家将面临武侠人生的挣扎抉择,战或降?杀或放?每个抉定都将触发更多爱恨纠葛的精彩奇遇。《天命奇御》具有多线剧情多结局,不限主线发展,高自由...
3. B站视频剪辑软件「必剪」:免费、炫酷特效,小白必备工具
B站视频剪辑软件「必剪」,完全免费、一键制作炫酷特效,适合新手小白。快来试试!
4. 手机游戏如何开发(如何制作传奇手游,都需要准备些什么?)
如何制作传奇手游,都需要准备些什么?提到传奇手游相信大家都不陌生,他是许多80、90后的回忆;从起初的端游到现在的手游,说明时代在进步游戏在更新,更趋于方便化移动化。而如果我们想要制作一款传奇手游的
5. 3D动画软件你知道几个?3ds Max、Blender、Maya、Houdini大比拼
当提到3D动画软件或动画工具时,指的是数字内容创建工具。它是用于造型、建模以及绘制3D美术动画的软件程序。但是,在3D动画软件中还包含了其他类型的...
三昧动漫对于著名ARPG游戏《巫师》系列,最近CD Projekt 的高层回应并不会推出《巫师4》。因为《巫师》系列在策划的时候一直定位在“三部曲”的故事框架,所以在游戏的出品上不可能出现《巫师4》
一、声音优化在绝地求生游戏中能够提前听到脚步声往往能提前取得战机,主要有两种方法:1、利用SoundLock软件,软件的功能主要是限制最大音量。百度搜索...
众所周知,虚幻引擎5(下面简称UE5)特别占用存储空间,仅一个版本安装好的文件就有60G,这还不包括我们在使用时保存的工程文件和随之产生的缓存文件。而...
UI设计师、动画设计师、特效设计师每一个职位的功能和负责的方面都不同。所以,3D美术这方面需要大量的人才。但是要成为一个3D游戏建模师,也不是那么...
想让你的3D打印模型更坚固?不妨尝试一下Cura参数设置和设计技巧,让你轻松掌握!
最新文章