Pygame (一)初识pygame

要点记录:

screen = pygame.display.set_mode(resolution=(0,0), flags=0, depth=0)

创建一个surface对象,可传入三个参数。

  1. 第一个 resolution表示一对代表宽度和高度的数字,用于表示窗口的大小,当width或height有一个为0时则表示用当前屏幕分辨率相同的宽度或高度。
  2. 第二个 flags 表示显示类型,为0或者缺失时表示默认驱动窗口。
    pygame.FULLSCREEN——创建一个全屏显示
    pygame.DOUBLEBUF——推荐用于HWSURFACE或OPENGL
    pygame.HWSURFACE——硬件加速,只有在FULLSCREEN中
    pygame.OPENGL——创建一个OpenGL可呈现的显示
    pygame.RESIZABLE ——显示可更改大小的窗口
    pygame.NOFRAME——显示窗口将没有边框或控件
  3. 第三个depth深度参数,通常最好不要通过深度参数。它将默认为系统的最佳和最快颜色深度。如果你的游戏需要特定的颜色格式,你可以用这个参数来控制深度。 Pygame会模拟一个不可用的颜色深度,可能会很慢。

程序:

import pygame
import sys
#size用来指定窗口大小
size = width, height = 1200, 800
#speed用来指定图片的移动速度
speed = [2, 1]
#bg用来指定背景颜色,RGB
bg = (255, 255, 255)
#图片位置
pic_file = 'car.jpg'

#初始化pygame
pygame.init()
#创建指定大小的窗口surface
screen = pygame.display.set_mode(size)
#设置窗口标题
pygame.display.set_caption("Hello World!")
#加载图片
pic = pygame.image.load(pic_file)
#获得图片位置
position = pic.get_rect()
print(position)

while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            sys.exit()

    #移动图片
    position = position.move(speed)

    if position.left < 0 or position.right > width:
        pic = pygame.transform.flip(pic, True, False)
        speed[0] = -speed[0]

    if position.top < 0 or position.bottom > height:
        speed[1] = -speed[1]

    #填充背景
    screen.fill(bg)
    #更新图像
    screen.blit(pic, position)
    #更新界面
    pygame.display.flip()
    pygame.time.delay(10)

上述是使用延时来改变图像的刷新速率,还有一种用来改变帧率的方式是:

clock = pygame.time.Clock()
#***#
clock.tick(200)#填入帧率
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值