第一节 pygame基础

一、pygame框架

1、基本框架:

import pygame                                   (导库)
pygame.init()                                    (初始化)
screen = pygame.display.set_mode((800,600))    (设置大小)
pygame.display.set_caption("可多的王国")            (设置窗口名称)
while True:                                        (主循环)
    king.quit()                                    (退出)
    screen.fill((255,255,255))                    (设置颜色)
    pygame.display.update()                        (更新画布)

2、导库

格式:import pygame,king

import表示导入、pygame表示游戏库、king是国王库

pygame是游戏库,会使用它做很多小游戏

king是国王使用的库

备注:库名之间用逗号隔开,当然也可以继续添加其他的库

3、初始化

格式:pygame.init()

打开游戏都有初始化的过程,相当于告诉电脑:"我要用pygame制作游戏啦!"

4、设置画布大小

格式:screen = pygame.display.set_mode((800,600))

第一个参数(800, 600)表示画布的大小,800表示画布的宽,600表示画布的高。注意是放在括号里。

变量screen代表设置的画布

注意是双扩号

画布大小的单位是像素

5、设置窗口名称

格式:pygame.display.set_caption("可多的王国")

注意:括号内是字符串,字符串需要使用双引号

6、填充颜色

格式:screen.fill((255,255,255))

这里使用的是变量screen,而不是pygame库

(255,255,255)是RGB颜色值,需要使用扩号

RGB颜色结构:

(num1,num2,num3)

num1是0-255的整数,代表R(red-红色),数字越大,颜色中红色成分越多

num2是0-255的整数,代表G(green-绿色),数字越大,颜色中绿色成分越多

num3是0-255的整数,代表B(blue-蓝色),数字越大,颜色中蓝色成分越多

7、更新画布

格式:pygame.display.update()
我们需要让画布一直显示,所以需要放进循环里

二、添加素材

1、添加图片

添加图片两步走:

1)加载图片 image = pygame.image.load("图片名.图片格式")

2)绘制图片 screen.blit(image,(100, 100))

这里的screen是pygame的画布,使用screen.blit()方法就可以将画布绘制到画布上,其中image是加载的图片,(100,100)是绘制的位置。

坐标系

pygame的坐标系是以左上角为原点,坐标为(0,0)。

横轴(X轴)向右坐标依次变大,纵轴(Y轴)向下坐标依次变大。

坐标系图:

alt 坐标系

2、pygame加载图片

格式:变量名=pygame.image.load("图片名称.图片格式")

图片名称需要用字符串的形式,而且需要带上图片的格式

3、pygame绘制图片

格式:画布名称.blit(绘制对象,(坐标x,坐标y))

注意:坐标需要用括号括起来

绘制图片语句要放在程序主循环pygame.display.update()之前

绘制多张图片时,先绘制的对象在下面,后绘制的对象在上面。如果坐标重合,后绘制的对象遮挡先绘制的对象

4、pygame缩放图片的方法

格式:变量名=pygame.transform.scale(缩放对象,(宽度,高度))

参数宽度和高度表示缩放后的宽度和高度,需要用括号括起来

这里的缩放对象是指通过pygame.image.load()方法加载过图片的对象

5、pygame显示图片的方法

缩放根据需要选择是否缩放,不是必要步骤

img1=pygame.image.load("图片名称.图片格式")
img2=pygame.transform.scale(img1,(宽度,高度))
screen.blit(img2,(坐标x,坐标y))
pygame.display.update()

results matching ""

    No results matching ""