2

我在带有ubuntu服务器的PC(PC-104)上使用pygame,因此它只有终端,没有UI。

在我的笔记本电脑上,代码完美运行,在终端上运行代码“例如:python game.py”,但在 PC104 上它给出“视频系统未初始化”,我读到错误显示,因为它是一种使用事件的方式在没有 UI 的系统上?

谢谢。

4

2 回答 2

4

感谢您的回答 jsbueno。几周前我能够找到解决方案,但忘记回答这个问题。

除了 X11 之外,我无法使用任何其他库运行任何 pygame 脚本。但是我发现没有图形库也可以运行脚本。只需将 SDL_VIDEOLIBRARY 环境变量设置为“虚拟”。

这在 bash 上是可行的,但我更喜欢在 python 上这样做:

os.environ["SDL_VIDEODRIVER"] = "dummy"

有了这个,我能够运行 pygame 脚本,检测操纵杆事件等。

于 2012-05-03T17:05:42.747 回答
2

如果您将其设置为使用帧缓冲区或 vgalib,则可以在没有 X11 的系统中运行 pygame 程序 - 文档甚至谈到使用 aalib(它将在终端上使用 ascii 艺术显示图形。)

这部分文档有它:

Pygame 在初始化时会从几个内部显示后端之一中进行选择。显示模式将根据当前用户的平台和权限来选择。在初始化显示模块之前,可以设置环境变量 SDL_VIDEODRIVER 来控制使用哪个后端。此处列出了具有多种选择的系统。

Windows:windib、directx
Unix:x11、dga、fbcon、directfb、ggi、vgl、svgalib、aalib

因此,您需要做的是在启动代码之前设置 SDL_VIDEODRIVER 环境变量。并且是舒尔正确的库。已安装。

欲了解更多信息: http: //www.pygame.org/docs/ref/display.html

于 2012-04-19T01:37:41.957 回答