hello world
import pygame,sys
from pygame.locals import *
pygame.init()
#这里set_mode参数为(resolution=(0,0), flags=0, depth=0)
#flags表示是全屏、非全屏等选项,depth是色深度,
#第一个分辨率(解像度)是一个元组
SURF = pygame.display.set_mode((600,480))
pygame.display.set_caption("helloworld")
while True:
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit()
#在调用这个函数显示的时候,只会把display.set_mode()
#返回的surface显示在屏幕上即DISPLAYSURF
#如果像显示其他的东西则需要调用blit函数把其他的surface拷贝
#到DISPLAYSURF上来
#在每次消息循环的时候都要刷新画面
pygame.display.update()
function和method的区别
function就是像C语言中的函数,而method则指
module和类的约定
module名字小写 class的第一个字母大写
PixelArray
这个module类,用来描画单个的pixel
FPS的概念
每秒钟刷新的帧数
一般的电视画面是24FPS;30FPS基本可以给玩家提供流程的体验了;
一般的电视画面是24FPS;30FPS基本可以给玩家提供流程的体验了;
LCD的话,60FPS是常用的刷新率,所以你的游戏的帧率再高也就没什么意义了;而绝大多数地球人都无法分辨70FPS以上的画面了!
通常用pygame.time.Clock来进行刷新频率的控制。
fpsClock = pygame.time.Clock
在程序的主循环中用
fpsClock.tick(30) 即刷新运行的频率为30FPS
while True:
图片的 x坐标 = x+1
pygame.displae.update
如果这样的话,图片会疯狂的移动x坐标。
但是控制了fpsclock.tick(30)的话,则只会1s内移动30次
fpsclock.tick一般在main循环的display.update()后调用