Python中用于游戏开发的pyglet库介绍
Pyglet是一个易于使用但功能强大的库,用于在 Windows、Mac OS 和 Linux 上开发视觉丰富的 GUI 应用程序,如游戏、多媒体等。这个库完全是用Python创建的,它支持许多功能,如窗口、用户界面事件处理、操纵杆、OpenGL 图形、加载图像和视频以及播放声音和音乐。 pyglet
是在 BSD 开源许可证下提供的,允许您将它用于商业和其他开源项目,几乎没有限制。
特征
- 没有外部依赖或安装要求:对于大多数应用程序的开发,pyglet 不需要任何外部库或安装包,这有助于简化分发和安装
- 利用多个窗口和多显示器桌面:有时多显示器桌面设置用于游戏开发,而 pyglet 的设计方式允许您根据需要使用任意数量的窗口,还允许跨多个屏幕的全屏游戏和应用程序.
- 以几乎任何格式加载图像、声音、音乐和视频
- pyglet 是在 BSD 开源许可证下提供的,允许您将它用于商业和其他开源项目,几乎没有限制。
- 它支持Python 2 和Python 3 中的开发
安装
由于 pyglet 完全是在Python中创建的,因此安装时不需要执行任何特殊任务。 pyglet 可以通过多种方式安装,最基本的安装需要在终端中输入以下命令:
pip install pyglet
例子:
import pyglet
new_window = pyglet.window.Window()
label = pyglet.text.Label('Hello, World !',
font_name ='Cooper',
font_size = 16,
x = new_window.width//2,
y = new_window.height//2,
anchor_x ='center',
anchor_y ='center')
@new_window.event
def on_draw():
new_window.clear()
label.draw()
pyglet.app.run()
输出:
解释
- 通过导入库开始程序:
import pyglet
- 使用默认构造函数,我们可以创建显示应用内容的窗口:
new_window = pyglet.window.Window()
- 创建标签以显示文本 Hello, World!:
label = pyglet.text.Label('Hello, World !', font_name ='Cooper', font_size = 16, x = new_window.width//2, y = new_window.height//2, anchor_x ='center', anchor_y ='center')
-
on_draw()
事件用于将其内容绘制到窗口上。pyglet 库提供了几种将事件处理程序附加到对象的方法;一个简单的方法是使用装饰器:@new_window.event def on_draw(): new_window.clear() label.draw()
- 最后要运行应用程序,在源代码末尾附加以下行:
pyglet.app.run()