在尝试运行游戏《时空幻境》时,出现黑屏和鼠标光标,我必须将其关闭。
我通过简易软件包下载了游戏 .deb,运行它并打开软件中心,下载了额外的 18.x Mb,然后显示游戏已安装。
我尝试了很多方法,比如在窗口模式下运行(/opt/braid/braid -windowed)并以特定的分辨率运行(如建议的那样这里),但这并不能解决问题。我也尝试过按照某处的建议使用 sudo 来运行它。
无论如何,我都会遇到同样的错误:
i915_program_error:超出最大间接纹理查找次数(4 次中的 8 次)
i915_program_error:超出最大间接纹理查找次数(4 次中的 8 次)
i915_program_error:超出最大 ALU 指令数(64 条中的 83 条)
当它运行时,并在终止它之后我得到:
X 请求失败的错误:BadDrawable(无效的 Pixmap 或 Window 参数)
失败请求的主要操作码:136(DRI2)
失败请求的次要操作码:8(DRI2SwapBuffers)
失败请求中的资源 ID:0x3e0000f
失败请求序列号:158
输出流中的当前序列号:158
我有
00:02.0 VGA 兼容控制器:英特尔公司移动 945GM/GMS、943/940GML Express 集成图形控制器(rev 03)
00:02.1 显示控制器:英特尔公司移动 945GM/GMS/GME、943/940GML Express 集成图形控制器(rev 03)
图形下的系统信息显示我的驱动程序是 Intel® 945GM x86/MMX/SSE2。
我运行了 Ubuntu 11.10 的全新安装,安装在带有外接显示器的笔记本电脑上。
这个错误信息是什么意思?我可以解决这个问题并玩游戏吗?
谨致问候,并提前感谢任何建议。——R
答案1
这些错误:
i915_program_error: Exceeded max nr indirect texture lookups (8 out of 4)
i915_program_error: Exceeded max ALU instructions (83 out of 64)
表示 Braid 正在尝试使用超出硬件能力的着色器(由驱动程序显示)。具体来说,它尝试执行 8 次间接纹理采样;硬件可以执行 4 次;它尝试在着色器中使用 83 条指令;硬件可以执行 64 条。
根据 Braid 如何构建这些着色器,这要么是严格的硬件限制(在这种情况下您运气不佳),要么(如果使用 GLSL 着色器)可能会随着 Mesa 着色器编译器的优化而变得更好。您可以在 Ubuntu Precise LiveCD 上尝试,因为它将具有更新版本的 Mesa。
您的 GPU 可能没有足够的硬件资源来运行 Braid。i945 是一款相当老的芯片。
答案2
我在 Fedora x64 上从 HIB 的 .bin 设置运行它时遇到了完全相同的错误
经过一些测试,我最终得到了一个非常非常丑陋的慢游戏(真的无法玩):./braid -windowed -half -15fps -width 1024 -height 768
有任何想法吗 ?
谢谢