PyGame Zero:没有样板文件的游戏

用PyGame Zero来告别游戏开发中枯燥的样板文件。

Python是很好的初学者编程语言。游戏是一个很好的初学者项目:它们是可视化的,自我激励的,并且在朋友和家人面前很有趣。然而,用Python编写游戏最常见的库PyGame可能会让初学者感到沮丧,因为忘记看似很小的细节很容易导致渲染失败。

PyGameZero(链接:https://pygame-zero.readthedocs.io/en/stable/)旨在通过在PyGame上放置一个抽象层来弥合这一差距,因此它实际上不需要样板文件。

这是有效的PyGame Zero文件:

# This comment is here for clarity reasons

我们可以将其放入game.py文件中并运行:

$ pgzrun game.py

这将显示一个窗口并运行一个游戏循环,可以通过关闭窗口或使用CTRL-C中断程序来关闭该循环。

不幸的是,这将是一个无聊的游戏。什么都没发生。

为了使其更加有趣,我们可以画出不同的背景:

def draw():
    screen.fill((255, 0, 0))

这将使背景变成红色而不是黑色。但它仍然是一个无聊的游戏。什么也没有发生。我们可以让它更有趣一点:

colors = [0, 0, 0]

def draw():
    screen.fill(tuple(colors))

def update():
    colors[0] = (colors[0] + 1) % 256

这将使一个窗口开始是黑色的,变得越来越亮的红色,然后回到黑色,一遍又一遍。

更新函数更新参数,而绘制函数根据这些参数呈现游戏。

但是,玩家无法与游戏互动!让我们尝试其他方法:

colors = [0, 0, 0]

def draw():
    screen.fill(tuple(colors))

def update():
    colors[0] = (colors[0] + 1) % 256

def on_key_down(key, mod, unicode):
    colors[1] = (colors[1] + 1) % 256

现在,按下键盘上的键会增加“绿色”。

这些包括游戏循环的三个重要部分:响应用户输入,更新参数以及重新渲染屏幕。

PyGame Zero提供了更多功能,包括绘制精灵和播放声音片段的功能。

尝试一下,看看您能想出什么样的游戏!

六一编程网

发表评论

Next Post

5个开源Python GUI框架

周日 6月 21 , 2020
您的Python程序需要图形用户界面吗?这里有五个工具可以帮助您构建一个。 在Python中,开始G […]