Pysdl2在Windows 7上找不到directx

2024-09-30 08:22:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我最近设法让pysdl2(0.9.3)在windows8.1(64位)机器上运行(以及扩展模块gfx、mixer、ttf和image)。一切都很好,包括pysdl2示例文件夹中的所有演示。在

但是,当我尝试在Windows 7(64位)上使用相同的SDL2 DLL版本运行相同的代码时,我收到错误消息:

sdl2.ext.common.SDLrror: 'directx not available'

打电话后

^{pr2}$

我尝试安装Directx最终用户运行时(2010年6月)甚至完整的SDK,但是没有成功。我还尝试将SDL\u VIDEODRIVER环境变量更改为directx之外的其他变量,但这也不起作用(显然“windib”在SDL2中不再可用)。在

我知道SDL2可能在寻找directx9,现在directx11已经完全取代了它,但是在安装了最终用户运行时之后,我的系统应该可以再次使用directx9。另外,如果这是问题的原因,那么它也不应该在windows8.1上运行,因为这个操作系统更新,更不可能携带DX9?在

编辑: 附带说明一下,pygame(使用旧的sdl1.2库)可以将directx作为

pygame.display.get_driver()

输出:

'directx'

所以SDL2库的内部配置一定有问题。在


Tags: 模块image文件夹机器示例windowsttfpygame
1条回答
网友
1楼 · 发布于 2024-09-30 08:22:11

我在WindowsXP上遇到了相同的错误directx not available,并通过使用将环境变量SDL_VIDEODRIVER设置为windows来解决这个问题

set SDL_VIDEODRIVER=windows 

在启动Python模块之前。也可以直接从Python使用

^{pr2}$

注意,windows是SDL2中Windows唯一支持的驱动程序。directx和{}仅对SDL1.2有效。在

我遇到这个问题是因为我同时导入了Pygame和PySDL2。结果是Pygame模块(使用SDL1.2)在导入时将SDL_VIDEODRIVER更改为{}。在

相关问题 更多 >

    热门问题