当前位置: 首页 > 工具软件 > sdl2-examples > 使用案例 >

Pygame 官方文档 - pygame.examples

宫俊才
2023-12-01

pygame.examples

示例程序的模块
pygame.examples.aliens.main - 玩完整的外星人示例
pygame.examples.oldalien.main - 玩原始外星人的例子
pygame.examples.stars.main - 运行一个简单的星空示例
pygame.examples.chimp.main - 击中移动的黑猩猩
pygame.examples.moveit.main - 在屏幕上显示动画对象
pygame.examples.fonty.main - 运行字体渲染示例
pygame.examples.freetype_misc.main - 运行FreeType渲染示例
pygame.examples.vgrade.main - 显示垂直渐变
pygame.examples.eventlist.main - 显示pygame事件
pygame.examples.arraydemo.main - 显示各种surfarray效果
pygame.examples.sound.main - 加载并播放声音
pygame.examples.sound_array_demos.main - 播放各种sndarray效果
pygame.examples.liquid.main - 显示动画液体效果
pygame.examples.glcube.main - 使用OpenGL显示动画3D立方体
pygame.examples.scrap_clipboard.main - 访问剪贴板
pygame.examples.mask.main - 使用碰撞检测显示多个图像相互反弹
pygame.examples.testsprite.main - 显示许多精灵在四处移动
pygame.examples.headless_no_windows_needed.main - 写一个图像文件,它是输入文件的平滑副本
pygame.examples.fastevents.main - 压力测试fastevents模块
pygame.examples.overlay.main - 使用overlays播放.pgm视频
pygame.examples.blend_fill.main - 演示各种surface.fill方法混合选项
pygame.examples.blit_blends.main - 使用替代添加剂填充到surface.fill的填充
pygame.examples.cursors.main - 显示两个不同的自定义光标
pygame.examples.pixelarray.main - 显示各种pixelarray生成的效果
pygame.examples.scaletest.main - 使用smoothscale以交互方式缩放图像
pygame.examples.midi.main - 运行一个midi示例
pygame.examples.scroll.main - 运行一个显示放大图像的Surface.scroll示例
pygame.examples.camera.main - 显示从连接的摄像机实时捕获的视频
pygame.examples.playmus.main - 播放音频文件

这些示例应该有助于您开始使用pygame。 这是你得到的简要概述。 这些示例的源代码位于公共域(public domain)中。 你可以随意使用自己的项目。
有几种方法可以运行这些示例。 首先,它们可以作为独立程序运行。 其次,可以导入它们并调用它们的main()方法(见下文)。 最后,最简单的方法是使用python -m选项:

python -m pygame.examples.<example name> <example arguments>

eg.

python -m pygame.examples.scaletest someimage.png

可以在pygame/examples/data子目录中找到示例的图像和声音等资源。 您可以使用python解释器中的以下命令找到安装示例文件的位置。

>>> import pygame.examples.scaletest
>>> pygame.examples.scaletest.__file__
'/usr/lib/python2.6/site-packages/pygame/examples/scaletest.py'

在每个操作系统和Python版本上,位置会略有不同。 例如在Windows上,它可能位于’C:/Python26/Lib/site-packages/pygame/examples/‘在Mac OS X上它可能位于’/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/sitepackages/pygame/examples/
您还可以通过在python解释器中调用每个模块main()函数来运行的示例。

>>> import pygame.examples.scaletest
>>> pygame.examples.scaletest.main()

我们一直在寻找更多示例和/或示例请求。 像这样的代码可能是开始参与python游戏的最佳方式。
这些作为包的示例是pygame 1.9.0的新增内容。 但是大多数例子都是在pygame之前发布的。
 

pygame.examples.aliens.main()

玩完整的外星人示例
aliens.main() -> None
这开始作为SDL演示的端口,外星人。 现在它已经演变成类似于娱乐的东西。 这展示了sprite的许多不同用途和优化的blitting。 还有透明度,颜色键,字体,声音,音乐,操纵杆等。 (PS,我的高分是117!真幸运)
搜索pygame.examples.aliens.main的示例

pygame.examples.oldalien.main()

玩原始外星人的例子
oldalien.main() -> None
这更类似于SDL Aliens演示的端口。 代码更简单,因此它为人们第一次查看代码提供了一个更好的起点。 这些blitting程序并不像它们应该/可能那样优化,但代码更容易遵循,并且它足够快。
搜索pygame.examples.oldalien.main的示例

pygame.examples.stars.main()

运行一个简单的星空示例
stars.main() -> None
一个简单的星空示例。您可以通过在屏幕上单击鼠标左键来更改透视中心。
搜索pygame.examples.stars.main的示例

pygame.examples.chimp.main()

击中移动的黑猩猩
chimp.main() -> None
这个简单的例子来自pygame附带的逐行教程。 它基于“流行”的网络横幅。 请注意,代码中有注释,但有关完整说明,请参阅那篇教程。
搜索pygame.examples.chimp.main的示例

pygame.examples.moveit.main()

在屏幕上显示动画对象
moveit.main() -> None
这是Pygame教程“如何让它移动”的完整和最后一个例子。 它创建10个对象并在屏幕上为它们设置动画。
请注意,它在错误检查方面有点不足,但它很容易阅读。 :]幸运的是,这是python,我们不需要与一堆错误代码搏斗。
搜索pygame.examples.moveit.main的示例

pygame.examples.fonty.main()

运行字体渲染示例
fonty.main() -> None
超快速,超级简单的应用程序演示了使用字体模块渲染字体的不同方法
搜索pygame.examples.fonty.main的示例

pygame.examples.freetype_misc.main()

运行FreeType渲染示例
freetype_misc.main() -> None
渲染的展示除了pygame.font.Font提供的那些外,还有pygame.freetype.Font的功能。它是直接surface渲染的演示,包括垂直文本和旋转文本,不透明文本和半透明文本,水平拉伸文本和垂直拉伸文本。
搜索pygame.examples.freetype_misc.main的示例

pygame.examples.vgrade.main()

显示垂直渐变
vgrade.main() -> None
演示使用pixelcopy和NumPy python创建垂直渐变。 该应用程序将每半秒创建一个新渐变,并报告创建和显示图像所需的时间。 如果您还没准备开始使用NumPy数组,请不要担心这个的来源:]
搜索pygame.examples.vgrade.main的示例

pygame.examples.eventlist.main()

显示pygame事件
eventlist.main() -> None
Eventlist是一种草率的pygame风格,但它是学习pygame事件和输入的便利工具。 屏幕顶部是几个设备值的状态,底部显示滚动事件列表。

这根本不是高质量’UI’代码,但您可以看到如何实现非交互式状态显示,甚至粗略的文本输出控件。
搜索pygame.examples.eventlist.main的示例

pygame.examples.arraydemo.main()

显示各种surfarray效果
arraydemo.main(arraytype=None) -> None
另一个充满各种surfarray效果的例子。 它需要安装surfarray和图像模块。 这个小小的演示也可以为您使用surfarray进行的任何测试提供一个良好的起点
不推荐使用arraytype参数; 除了’numpy’之外传递任何值都会引发ValueError。
搜索pygame.examples.arraydemo.main的示例

pygame.examples.sound.main()

加载并播放声音
sound.main(file_path=None) -> None
对mixer模块进行极其基本的测试。 加载声音并播放。 全部来自命令shell,没有图形。
如果提供,请使用音频文件’file_path’,否则使用默认文件。
sound.py可选命令行参数:一个音频文件
搜索pygame.examples.sound.main的示例

pygame.examples.sound_array_demos.main()

播放各种sndarray效果
sound_array_demos.main(arraytype=None) -> None
使用sndarray和NumPy创建原始声音的偏移淡出副本。 目前它只使用硬编码值来表示回应和延迟。 您可以根据需要轻松重新创建。
不推荐使用arraytype参数; 除了’numpy’之外传递任何值都会引发ValueError。
搜索pygame.examples.sound_array_demos.main的示例

pygame.examples.liquid.main()

显示动画液体效果
liquid.main() -> None
这个例子是在与BlitzBasic游戏语言的快速比较中创建的。尽管如此,它演示了一个快速的8位设置(使用色彩映射)。
搜索pygame.examples.liquid.main的示例

pygame.examples.glcube.main()

使用OpenGL显示动画3D立方体
glcube.main() -> None
使用PyOpenGL和pygame,这将创建一个旋转的3D多色立方体。
搜索pygame.examples.glcube.main的示例

pygame.examples.scrap_clipboard.main()

访问剪贴板
scrap_clipboard.main() -> None
剪贴板支持的简单演示示例。
搜索pygame.examples.scrap_clipboard.main的示例

pygame.examples.mask.main()

使用碰撞检测显示多个图像相互反弹
mask.main(*args) -> None
位置参数:

one or more image file names.
一个或者更多的图像文件名字

这个pygame.masks演示将显示多个相互反弹的移动精灵。可以提供多个精灵图像。 如果作为程序运行,则mask.py将一个或多个图像文件作为命令行参数。
搜索pygame.examples.mask.main的示例

pygame.examples.testsprite.main()

显示许多精灵在四处移动
testsprite.main(update_rects = True, use_static = False, use_FastRenderGroup = False, screen_dims = [640, 480], use_alpha = False, flags = 0) -> None
可选关键字参数:

update_rects  - 使用RenderUpdate sprite组类
use_static  - 包括非运动图像
use_FastRenderGroup  - 使用FastRenderGroup sprite组
screen_dims  -  pygame窗口尺寸
use_alpha  - 使用alpha混合
flags  - 附加显示模式标志

就像SDL附带的testsprite.c一样,这个pygame版本显示了许多精灵在四处移动。 如果作为独立程序运行,则不会采用命令行参数。
搜索pygame.examples.testsprite.main的示例

pygame.examples.headless_no_windows_needed.main()

写一个图像文件,它是输入文件的平滑副本
headless_no_windows_needed.main(fin, fout, w, h) -> None
参数:

fin  - 输入图像文件的名称
fout  - 要创建/覆盖的输出文件的名称
w,h  - 重新缩放图像的大小,整数宽度和高度

如何在没有窗口系统的情况下使用pygame,就像在无头服务器上一样。
缩放生成缩略图是pygame可以做的一个例子。
注意:pygame scale函数使用MMX / SSE(如果可用),并且可以在多个线程中运行。
如果headless_no_windows_needed.py作为程序运行,则需要以下命令行参数:

-scale inputimage outputimage new_width new_height
例如: -scale in.png outpng 50 50

搜索pygame.examples.headless_no_windows_needed.main的示例

pygame.examples.fastevents.main()

压力测试fastevents模块
fastevents.main() -> None
这是压力测试fastevents模块
1.快速事件不会出现的更快!
到目前为止,看起来普通的pygame.eventpygame模块与事件和队列进行交互的速度最快可达两倍。 所以也许紧固不快。
在Windows XP SP2 Athlon和FreeBSD上测试过。
但是…在我的Debian Duron 850机器上,fastevent更快。
搜索pygame.examples.fastevents.main的示例

pygame.examples.overlay.main()

使用overlays播放.pgm视频
overlay.main(fname) -> None
播放路径fname给出的.pgm视频文件。 如果以程序形式运行,则overlay.py将文件名作为命令行参数。
搜索pygame.examples.overlay.main的示例

pygame.examples.blend_fill.main()

演示各种surface.fill方法混合选项
blend_fill.main() -> None
一个交互式演示,可让您选择将哪个BLEND_xxx选项应用于surface。
搜索pygame.examples.blend_fill.main的示例

pygame.examples.blit_blends.main()

使用替代添加剂填充到surface.fill的填充
blit_blends.main() -> None
假添加剂混合。使用NumPy。它没有被锁住。按r,g,b有点像blend_fill。
搜索pygame.examples.blit_blends.main的示例

pygame.examples.cursors.main()

显示两个不同的自定义光标
cursors.main() -> None
展示一个箭头或者禁止通行的圆圈光标
搜索pygame.examples.cursors.main的示例

pygame.examples.pixelarray.main()

显示各种pixelarray生成的效果
pixelarray.main() -> None
显示各种pixelarray生成的效果。
搜索pygame.examples.pixelarray.main的示例

pygame.examples.scaletest.main()

使用smoothscale以交互方式缩放图像
scaletest.main(imagefile, convert_alpha=False, run_speed_test=True) -> None
参数:

imagefile  - 源图像的文件名(必填)
convert_alpha  - 在surf上使用convert_alpha()(默认为False)
run_speed_test  - (默认为False)

一个smoothscale示例,用于调整屏幕上图像的大小。 垂直和水平箭头键用于更改显示图像的宽度和高度。 如果convert_alpha选项为True,则源图像将被强制为源alpha,无论原始图像是否为。 如果run_speed_test为True,则执行后台计时测试而不是交互式缩放器。
如果scaletest.py作为程序运行,那么命令行选项是:

ImageFile [-t] [-convert_alpha]
[-t] = 运行速度测试
[-convert_alpha] = 在surf上使用convert_alpha()。

搜索pygame.examples.scaletest.main的示例

pygame.examples.midi.main()

运行一个midi示例
midi.main(mode=‘output’, device_id=None) -> None
参数:

mode  - 如果'output'运行midi键盘输出示例
           'input'运行midi事件记录器输入示例
           'list'列出了可用的midi设备
        (默认'输出')
device_id  -  midi设备编号; 如果为None则使用默认的midi输入或
             系统的输出设备

输出示例显示如何将鼠标单击或计算机键盘事件转换为midi音符。 它实现了一个基本的按钮小部件和状态机。
输入示例显示如何将midi输入转换为pygame事件。
通过使用虚拟midi跳线,输出和输入示例可以作为单独的进程运行并连接,以便键盘输出显示在控制台上。
pygame 1.9.0的新功能
搜索pygame.examples.midi.main的示例

pygame.examples.scroll.main()

运行一个显示放大图像的Surface.scroll示例
scroll.main(image_file=None) -> None
此示例显示可缩放因子为8的可滚动图像。 它使用Surface.scroll()函数来移动显示表面上的图像。 剪辑矩形保护边缘区域。 如果作为函数调用,则该示例接受可选的图像文件路径。 如果作为程序运行,则需要一个可选的文件路径命令行参数。 如果未提供文件,则使用默认图像文件。
在运行时单击黑色三角形以在三角形指向的方向上移动一个像素。 或使用箭头键。 关闭窗口或按ESC退出。
搜索pygame.examples.scroll.main的示例

pygame.examples.camera.main()

显示从连接的摄像机实时捕获的视频
camera.main() -> None
一个简单的实时视频播放器,它使用它在系统上找到的第一个可用摄像头。
搜索pygame.examples.camera.main的示例

pygame.examples.playmus.main()

播放音频文件
playmus.main(file_path) -> None
一个带窗口和键盘播放控制的简单音乐播放器。播放可以暂停并重新开始。
搜索pygame.examples.playmus.main的示例
 

以上文档,自己翻译,可能有误,可参考:pygame.examples

点我回顶部

 
 
 
 
 
 
Fin.

 类似资料: