Pygame
文章平均质量分 69
爱编程的章老师
这个作者很懒,什么都没留下…
展开
-
Pygame 遮罩
Pygame 遮罩用途解决不规则图形碰撞示例反例:用矩形对象来检测两个圆的碰撞# coding: utf-8# 作者:爱编程的章老师# 创建:2021/1/28 8:48 下午 # 邮箱:slxxf000@163.com# 微信:slxxfl# 微信公众号:A卫隆少儿编程# 格言:给自己的生活增加一份向上的力,每都进步一点点import pygamefrom sys import exitWIDTH = 800HEIGHT = 800pygame.init()sc原创 2021-01-30 19:20:20 · 602 阅读 · 0 评论 -
pygame Sprite类(4)
pygame Sprite类(4)开箱即用的打砖块游戏精灵类Demo版# Pygame Sprite(4)# coding: utf-8# 作者:爱编程的章老师# 创建:2021/1/27 2:53 下午 # 邮箱:slxxf000@163.com# 微信:slxxfl# 微信公众号:A卫隆少儿编程# 格言:给自己的生活增加一份向上的力,每都进步一点点from random import randintimport pygamefrom pygame.sprite import S原创 2021-01-27 22:15:45 · 389 阅读 · 0 评论 -
pygame Sprited类3
pygame Sprited类3Group# coding: utf-8# 作者:爱编程的章老师# 创建:2021/1/26 8:46 下午 # 邮箱:slxxf000@163.com# 微信:slxxfl# 微信公众号:A卫隆少儿编程# 格言:给自己的生活增加一份向上的力,每都进步一点点import pygameimport sysclass Ball(pygame.sprite.Sprite): def __init__(self, screen, radius,原创 2021-01-26 21:34:14 · 259 阅读 · 0 评论 -
Pygame Sprite类2
Pygame Sprite类2update方法重写Sprite类的方法与 screen的Sprite方法不同.这个方法只是一个改变实例的位置与形状的方法.即Sprite的update其实是类的实际业处处理的方法# 创建:2021/1/24 8:46 下午 # 邮箱:slxxf000@163.com# 微信:slxxfl# 微信公众号:A卫隆少儿编程# 格言:给自己的生活增加一份向上的力,每都进步一点点import pygameimport sysclass Ball(pygame.s原创 2021-01-24 21:13:49 · 271 阅读 · 0 评论 -
Pygame Sprite类1
Pygame Sprite类Sprite: 精灵pygame中为可见而专门设置的一个类继承# 从Sprite类继承,新建一个球的类class Ball(pygame.sprite.Sprite): pass# 实例化一个球类ball = Ball()Spirte中的基本方法pygame.sprite.Sprite.update - 控制精灵行为的方法pygame.sprite.Sprite.add - 将精灵添加到组中pygame.sprite.Sprite.remove - 从原创 2021-01-23 22:07:23 · 682 阅读 · 2 评论 -
Pygame(二十)音乐播放器2
Pygame(二十)音乐播放器2接上节内容:# /usr/bin/python3# Author: 爱编程的章老师# @Time: 2021/1/17 0017# E-mail: Bluesand2010@163.comimport pygameimport sysimport osfrom random import randint'''音乐播放器'''# 音乐播放/暂停/继续/停止功能# 实现播放列表显示功能# 实现单曲循环/列表循环/随机播放功能# 实现进度条拖动改原创 2021-01-18 22:50:10 · 677 阅读 · 2 评论 -
Pygame(十九)音乐播放器1
Pygame(十九)音乐播放器1前情提要本节提要界成设计效果图界面代码设计# /usr/bin/python3# Author: 爱编程的章老师# @Time: 2021/1/17 0017# E-mail: Bluesand2010@163.comimport pygameimport sysimport os'''音乐播放器'''# 音乐播放/暂停/继续/停止功能# 实现播放列表显示功能# 实现单曲循环/列表循环/随机播放功能# 实现进度条拖动改变进度功能#原创 2021-01-17 20:51:33 · 666 阅读 · 2 评论 -
Pygame(十八)音乐
Pygame(十八)音乐没有声音的游戏是没有灵魂的.游戏中怎么可以没有声音呢?前情提要本节提要内容详情这长长的一串,对比昨天的短小无力,感觉今天的工作是真的大.内容详情加载与播放加载pygame.mixer.music.load(filename/fileobject)参数说明:filename: 音乐文件的路径,可以是绝对路径,也可以是相对路径fileobject: python文件操作句柄(不鼓励此种用法)播放pygame.mixer.music.play(loo原创 2021-01-16 21:44:14 · 1582 阅读 · 1 评论 -
Pygame(十七)定时器
Pygame(十七)定时器感言:这个系统的教程从起笔到现在已经17天了.这17天时,本人博客的浏览量相比以前有了非常大的提高.这里首先感谢CSDN这个平台,让我能有机会将自己的所学与别人分享.然后感谢那些在我的博文里留言评论,点赞的各们朋友.你们的支持,让我的创作过程充满了努力的动力.非常感谢.前情提要本节提要内容详情看这个思维导图,感觉好像有点短小无力不过,之所以单独拿出来开一篇,是因为这个东西可以说是游戏设计中一个非常非常重要的概念.具体有多重要,我们后面的应用中慢慢道来set原创 2021-01-15 22:08:25 · 6005 阅读 · 1 评论 -
Pygame(十六)时间
Pygame(十六)时间前情提要前言无论是动画,还是游戏时间的概念都极为重要.无论是动画,还是游戏中都有一个重要的概念:,帧数意思是一秒内几副图前面,我们都是用time模块的sleep()函数来实现控制帧数的目的.但是实际上,电脑对我们事件的响应是有需要时间的.而我们用time模块的sleep()功能是不会考虑CPU的用时的,假装CPU能瞬间处理所有的事情.因此,这样的做法会带来一些不稳定因素,即这个帧速其实是会随着要处理的东西的增多而变的与实际目标相差更多大.反应到游戏(动画)中,看上去原创 2021-01-14 21:48:54 · 3065 阅读 · 0 评论 -
pygame(十五)拼图游戏
pygame(十五)拼图游戏前情提要本节提要内容详情截取目标矩形图片上节课,我们学到一个裁剪图片的方法: chop()这个方法是将原截掉一个十字形的位置,将剩下的四个矩形合并成一个新的矩形图片.这样非常不利于我们截取图片.因此,我们将这个方法进行改进,变成截取矩形位置的图片的方法rect_chop()代码def rect_chop(img:pygame.Surface, rect:pygame.Rect): '''截取指定位置的图形''' result_surface原创 2021-01-13 23:09:10 · 3760 阅读 · 6 评论 -
Pygame(十四)图像变换
Pygame(十四)图像变换前情提要本节提要前言上一节我们学习了如何从文件加载图像到pygame中以便我们将游戏做的更加精致,更加受人喜欢.但是有些时候,我们可能需要对文件加载进来的图片进行一些处理,以达到更好的效果.比如,我们在制作人物运动的时候,朝左走的人和朝右走的人是左右镜像的.如果我们还是用两个文件的图片的话,就会造成资源的浪费.不仅浪费有限的存储空间,还浪费人力,物力去准备这双重的资源.如果我们能够实现这样的镜象效果,就可以达成以上的节省目标.内容详情翻转翻转分左右翻转与上原创 2021-01-12 22:37:59 · 2329 阅读 · 1 评论 -
Pygame(十三)图像
Pygame(十二)图像前言对于一些复杂的游戏或者想要让我们的游戏角色与场景更加逼真与形象,用Pygame自带的作图方法就会显得很无奈.因此善用图片资源就成了我们的一个重要的手段.pyame中,图片资源的操作用的是image模块本节提要内容详情加载图片image_surface = pygame.image.load(filepath)image_surface = pygame.image.load(fileobj, namehint)参数说明:filepath: 图片文件的路原创 2021-01-11 21:33:35 · 391 阅读 · 0 评论 -
Pygame(十二)打砖块
Pygame(十二)打砖块目标小球撞击响应砖块撞击响应挡板撞击响应完整示例代码# /usr/bin/python3# Author: 爱编程的章老师# @Time: 2021/1/9 0009# E-mail: Bluesand2010@163.com'''设计一个打砖块的游戏'''# 1. 开局屏幕上方有4行每行10个砖块# 2. 在屏幕下方有一个长100 的挡板# 3. 有一个小球从挡板中间出发,45角方向import pygameimport sysimpor原创 2021-01-10 20:03:10 · 1802 阅读 · 8 评论 -
Pygame(十一)文字
Pygame(十一)文字前言游戏开发中,所有的显示内容最终都是以图像的方式显示出来的.因此,需要用专用的方法来处理文字与图像之间的转换逻辑本内提要内容详情我的标题栏我做主先看一下最小pygame框架def change_title(): pygame.init() s = pygame.display.set_mode((800 ,600)) while 1: for event in pygame.event.get():原创 2021-01-09 20:44:32 · 1340 阅读 · 0 评论 -
Pygame(十)作业
Pygame(十)作业作业详解第一题题目随心圆:以鼠标左键点击为圆心,画一个半径50 ,颜色随机的圆分析需求分析:鼠标左键点事件获取鼠标的位置颜色随机画圆代码鼠标左键点击事件获取鼠标的位置if event.type == pygame.MOUSEBUTTONDOWN: if event.button == 1: pos = event.pos颜色随机r = randint(0,255)g = randint(0,255)b = ran原创 2021-01-08 23:51:50 · 469 阅读 · 0 评论 -
Pygame(九)事件(2)
Pygame(九)按键事件(2)前情提要作业解析完整代码# /usr/bin/python3# Author: 爱编程的章老师# @Time: 2021/1/7 0007# E-mail: Bluesand2010@163.comimport pygame, sys, timefrom random import randintdef homework(): '''作业''' ''' 挡板接球 一个宽100 ,高10的棕色挡板,一个直径20的小球原创 2021-01-07 22:37:10 · 342 阅读 · 3 评论 -
Pygame(八)事件(1)
Pygame(八)事件(1)前情提要作业讲解作业内容自由落体画一个棕色的扁长方形当地板画一个蓝色小正方形(有能力的可以画球)当小球小球自上而下.起始高度差200每次落地后反弹高度为掉落高度的一半.直到反弹高度<5时停止不考虑加速度.即速度在下落与反弹过程中假高是恒定的思维分析方块有两种运动:弹起(向上)与下落(向下)向上运动按距离来算向下运动按碰撞来算.(也可以考虑用时间来算,下落的时间是弹起的时间的两倍)运动结束的条件是弹起的距离<5代码:# /usr/原创 2021-01-06 21:48:13 · 1357 阅读 · 4 评论 -
Pygame(七) 碰撞检测
Pygame(七) 碰撞检测前情提要作业分析:作业内容:设计一个碰到墙壁就反弹的pygame实现完整代码# /usr/bin/python3# Author: 爱编程的章老师# @Time: 2021/1/5 0005# E-mail: Bluesand2010@163.comimport pygameimport sysimport timedef homeworkd(): pygame.init() s = pygame.display.set_mo原创 2021-01-05 21:39:24 · 4767 阅读 · 3 评论 -
Pygame(六)动画起步1
Pygame(六)动画起步1前情提要作业示例# /usr/bin/python3# Author: 爱编程的章老师# @Time: 2021/1/4 0004# E-mail: Bluesand2010@163.comimport pygameimport sysdef homework(): pygame.init() screen = pygame.display.set_mode((800, 600)) screen.fill((255,255,原创 2021-01-04 22:19:19 · 729 阅读 · 2 评论 -
Pygame(五)画线
Pygame(五)画线前情提要作业代码import sysimport pygamefrom math import pidef homework(): pygame.init() screen = pygame.display.set_mode((800, 600)) screen.fill((255, 255, 255)) # 画正方形 rect = (300,200,200,200) pygame.draw.rect(screen, (原创 2021-01-03 21:13:01 · 5361 阅读 · 15 评论 -
Pygame(四)画椭圆,弧
Pygame(三)画椭圆,弧前情提要:作业答案正方形与内切圆def rect_circle(): pygame.init() screen = pygame.display.set_mode((800, 600)) screen.fill((255,255,255)) # 画正方形 rect = pygame.Rect(300, 200, 200, 200) pygame.draw.rect(screen, (0, 0, 255), rect,原创 2021-01-02 21:06:24 · 3579 阅读 · 9 评论 -
Pygame(三)画圆
Pygame(三)画圆作业代码画一个矩形:要求,左上角在(100,100), 宽为200, 高为60,边框颜色为蓝色作业代码:def homework01(): '''画一个矩形''' ''' 要求: 1 画一个矩形:要求,左上角在(100,100), 宽为200, 高为60,边框颜色为蓝色 ''' pygame.init() screen = pygame.display.set_mode((800, 600)) rect =原创 2021-01-01 21:49:24 · 6185 阅读 · 8 评论 -
Pygame(二)
Pygame(二)前情提要本节提要内容详解坐标pygame中的坐标系pygame中的坐标系定义以画布的左上角为坐标原点(0,0)以向右方向为x轴正方向以向下方向为y轴负方向坐标系示意图:坐标的意义我们怎么描述如下图所示的圆的圆心位置呢?如果没有坐标的概念,我们可以这样说:它在离左边XX距离, 离上边XX距离的地方.而我们有了坐标,可以这样说:圆心在(x,y)处其中x:就表示圆心离左边的距离 ,表示圆心离上边的距离, 是不是方便,简洁了很多啊?再比如说,当我们发现原创 2020-12-31 21:10:57 · 1680 阅读 · 2 评论 -
Pygame(一)
Pygame(一)前言从今天开始,学习Pygame安装因为pygame与turtle库不一样,是一个第三方库.因此,需要我们手动去安装pygame库我们打开命令行窗口:快捷键:win+R (win就是键盘上那个有windows徽标的(四个方块的)的那个键)然后输入cmd点运行(回车)4.在弹出的窗口中输入:pip install pygame静候安装截止今天,pygame库版本已经更新到2.0.1了Pygame程序最小模板# /usr/bin/py原创 2020-12-30 22:04:38 · 1080 阅读 · 1 评论