Loading

1.pygame快速入门-创建游戏窗口

 
简介
pygame是python一个包,专为电子游戏设计#安装
pip3 install pygame

#验证安装
# aliens 是pygame内置的一个小游戏,可以启动成功说明pygame安装成功
python3 -m pygame.examples.aliens

 

游戏的第一印象
  • 把一些静止的游戏绘制到游戏窗口
  • 根据用户的交互或其他情况,移动这些图片、产生动画效果
  • 根据图像直接是否发生重叠、判断敌机是否被摧毁等其他情况
 
游戏的初始化和退出
  • 要使用pygame提供的所有功能之前,需要调用init方法
  • 在游戏结束前需要调用一下quit方法
pygame.init()  #导入并初始化所有pygame模块,使用其他模块之前必须先调用init方法
pygame.quit()  #卸载所有pygame模块,在游戏结束之前调用

 

 
游戏中的坐标系
  • 原点在左上角(0,0)
  • x轴水平方向向右,逐渐增加
  • y轴垂直方向向下,逐渐增加
 
pygame.Rect描述矩形区域
  • 在游戏中,所有可见的元素都是以矩形区域来描述位置
  • 要描述一个矩形区域有四个要素:(x,y)(width,height)
  • python专门提供了一个类pygame.Rect用于描述矩形区域
  • pygame.Rect是一个比较特殊的类,内部只是封装了一些数字计算
  • 不执行pygame.init()方法同样可以使用
Rect(x,y,width,height) -> Rect
"""
定义矩形区域描述英雄的位置和大小
输出英雄的坐标原点(x和y)
输出英雄的尺寸(宽度和高度)
"""
import pygame

# 参数:x点 y点 宽度 高度
rect = pygame.Rect(100,500,120,125)

print(f'英雄的原点{rect.x},{rect.y}')
print(f'英雄的尺寸{rect.width},{rect.height}')
print(f'英雄的尺寸{rect.size}')

# Rect的size会返回一个元组,第一个值是对象的宽度,第二个值是对象的高度

 

创建游戏主窗口和游戏主循环
可以将图片素材绘制到游戏的窗口上,开发游戏之前需要先知道如何建立游戏窗口
pygame提供了一个模块pygame.display用于创建、管理游戏窗口
pygame.displat.set_mode()  # 初始化游戏显示窗口
pygame.display.update()  #刷新屏幕显示内容
set_mode方法
set_mode(resolution=(0,0),flages=0,depth=0) -> Surface
# resolution指定屏幕的宽和高,默认创建的窗口大小和屏幕大小一致
# flags参数指定屏幕的附加选项,例如是否全屏等,默认不需要传递
# depth参数表示颜色的位置,默认自动匹配
作用--创建游戏显示窗口
返回值--暂时可以理解为游戏的屏幕、游戏的元素都需要被绘制到游戏屏幕上
注意--必须使用变量记录set_mode方法的返回结果,因为后续所有的图像绘制都基于这个返回结果

pygame.init()

# 创建游戏窗口
screen = pygame.display.set_mode()


# 游戏主循环
# 为了做到游戏程序启动后,不会立即退出,通常会在程序中增加一个游戏循环
#所谓游戏循环就是一个无限循环,可以做一些对应的操作
# pygame.event.get() 是获取当前窗口的事件 .type是获取事件的类型,如果类型是QUIT,就结束执行

runing = True
while runing:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            runing = False
            
pygame.quit()

 

posted @ 2022-05-20 01:09  木子七  阅读(867)  评论(0编辑  收藏  举报