pygame开发游戏的主要流程

Posted liquancai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pygame开发游戏的主要流程相关的知识,希望对你有一定的参考价值。

pygame开发游戏的主要流程

pygame开发游戏的基础是创建游戏窗口,核心是处理事件、更新游戏状态和在屏幕上绘制图形。游戏状态可以理解为程序中所有变量值的列表。在有些游戏中,游戏状态包括存放人物健康个位置的变量、物体或图形位置的变化,这些值可以在屏幕上表示。

物体或图形位置的变化只有通过在屏幕上绘图才可以看出来。

可以简单的抽象出pygame开发游戏的主要流程如下:

技术图片

下面举一个具体例子来说明:

使用 pygame 开发一个显示 “Hello World!”标题的窗口

import pygame

def hello_world():
    pygame.init()
    pygame.display.set_mode((400, 600))
    pygame.display.set_caption("Hello World!")
    while True:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                pygame.quit()
                exit()
        pygame.display.update()


if __name__ == ‘__main__‘:
    hello_world()

运行后仅见到黑色的游戏窗口,标题是“Hello World!”,如下所示:

技术图片

在导入pygame模块后,任何pygame游戏程序均需要执行 pygame.init() 语句进行模块的初始化,它必须在进入游戏的无限循环之前被调用。这个函数会自动初始化其他所有模块(例如 pygame.font 和 pygame.image),通过它载入驱动和硬件请求,这样游戏程序才可以使用计算机上的所有设备,比较费时间。如果只使用少量的模块,应该分别初始化这些模块以节省时间,例如 pygame.sound.init() 仅仅初始化声音模块。

该代码中有个无限循环,每个 pygame 程序都需要它,在无限循环中可以做以下操作。

  1. 处理事件:例如鼠标 、键盘 、关闭窗口等事件。
  2. 更新游戏状态:例如坦克的位置变化 、数量变化等。
  3. 在屏幕上绘图:例如绘制新的敌方坦克等。

不断重复上面3个步骤,从而完成游戏逻辑。

在本例代码中仅仅处理关闭窗口事件,也就是玩家关闭窗口时 pyagme.quit() 退出游戏。

以上是关于pygame开发游戏的主要流程的主要内容,如果未能解决你的问题,请参考以下文章

Python游戏开发,pygame模块,Python实现五子棋联机对战小游戏

一起来学pygame吧 游戏开发30例——推箱子 小游戏

一起来学pygame吧 游戏开发30例——消消乐 小游戏 丨蓄力计划

pygame-KidsCanCode系列jumpy-part1-如何组织复杂游戏的代码

Pygame 游戏开发 实战 1

Pygame 游戏开发 实战 1