两台 Debian/测试机器具有相同版本的 Firefox,但具有不同的 GPU 和 X 驱动程序。
在我父亲的机器上,访问本网站Firefox 控制台中出现以下错误消息:“需要对顶点着色器采样器的 WebGL 支持,但不支持。”我已与开发者网站确实似乎缺少支持。如果我在我的计算机上运行相同的测试,它们会通过。到目前为止,没有什么奇怪的:缺乏 WebGL 支持。我也在他的计算机上尝试过 Chromium(仅在本地),它有同样的问题。
现在是有趣的部分:
- 在他的计算机前,在我的计算机上运行 Firefox(ssh -X),但将输出发送到他的计算机:这也能正常工作。
- 在我的计算机前,在他的计算机上运行 Firefox,但将 X 输出发送到我的计算机:运行良好。
所有测试中仅运行一个 Firefox 副本,配置文件是从头创建的,但结果与他或我的正常配置文件相同。
如果故障在于他的机器上缺少某些库,在应用程序将输出发送到 X 显示器之前,那么将我的程序作为远程显示器应该没有什么区别:它应该会失败,但它可以工作。相反,如果故障在于 X 显示器和 GPU 驱动程序,那么我自己的 Firefox 在他的计算机上显示也应该会失败,但它也可以工作。
怎么会这样?我很想了解发生了什么,然后解决它。
编辑:使用我的笔记本电脑(不支持 webgl)和我的台式机运行相同的测试:在这种情况下,远程处理不会改变结果;当输出在桌面上时,笔记本电脑上的 Firefox 仍然无法通过测试,反之亦然。
答案1
没关系:远程/本地测试只会混淆问题,正如我后来用旧笔记本电脑进行的测试所证实的那样。如果硬件太旧并且缺乏适当的支持,那么根本无法启用 webgl 支持。(集成显卡芯片组:Intel(R) Pineview GM)
Firefox,“about:support”显示:
WebGL creation failed:
* Refused to create native OpenGL context because of blacklist entry: FEATURE_FAILURE_OPENGL_1
* Exhausted GL driver options.
WebGL creation failed:
* Refused to create WebGL2 context because of blacklist entry: FEATURE_FAILURE_OPENGL_1