本文共 1832 字,大约阅读时间需要 6 分钟。
壁球v1.1图像型
新增的代码BLACK = 0, 0, 0
定义一个颜色,rgb的颜色机制,分别是红,绿,蓝,三个0表示黑色
pygame.image.load("F:\python\壁球项目\image\球.png")
添加图片,当只使用球.png导入的时候报错时,可以使用完整路径,这样这张图片一定可以被导入进去
import pygame, syspygame.init()size = width, height = 600, 400speed = [1, 1]BLACK = 0, 0, 0screen = pygame.display.set_mode(size)pygame.display.set_caption("Pygame壁球")ball = pygame.image.load("F:\python\壁球项目\image\球.png")ballrect = ball.get_rect()while True: for event in pygame.event.get(): if event.type == pygame.QUIT: sys.exit() ballrect = ballrect.move(speed[0], speed[1])#设置图像移动 if ballrect.left < 0 or ballrect.right > width: speed[0] = - speed[0]#当快要越界的时候,使得运动的方向改为相反的方向 if ballrect.top < 0 or ballrect.bottom > height: speed[1] = - speed[1] screen.fill(BLACK)#设置填充,我们使用的是一个包括图片的矩形区域在移动, #实际上就是给图片和矩形之间填充为黑色,这样可以“骗过”我们的眼睛 screen.blit(ball, ballrect) pygame.display.update()
在上述代码当中我们发现球的速度太快,有一点晃的眼睛痛,怎么调慢呢?
壁球v1.2节奏型
新增代码
fps = 300fclock = pygame.time.Clock()fclock.tick(fps)
定义一个fps表示运动帧率,
pygame.time.Clock(): 在WINDOWS中,第一次调用,返回的是进程运行的实际时间。而第二次之后的调用是自第一次调用以后到现在的运行时间。 实际上来说就是给这一个程序的持续刷新加上300毫秒,间接的表示将速度减慢import pygame, syspygame.init()size = width, height = 600, 400speed = [1, 1]BLACK = 0, 0, 0screen = pygame.display.set_mode(size)pygame.display.set_caption("Pygame壁球")ball = pygame.image.load("F:\python\壁球项目\image\球.png")ballrect = ball.get_rect()fps = 300fclock = pygame.time.Clock()while True: for event in pygame.event.get(): if event.type == pygame.QUIT: sys.exit() ballrect = ballrect.move(speed[0], speed[1]) if ballrect.left < 0 or ballrect.right > width: speed[0] = - speed[0] if ballrect.top < 0 or ballrect.bottom > height: speed[1] = - speed[1] screen.fill(BLACK) screen.blit(ball, ballrect) pygame.display.update() fclock.tick(fps)
转载地址:http://rtmzi.baihongyu.com/