![WebGL 在 Firefox 和 Chrome 上均不起作用](https://linux22.com/image/847580/WebGL%20%E5%9C%A8%20Firefox%20%E5%92%8C%20Chrome%20%E4%B8%8A%E5%9D%87%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8.png)
我使用的是 Ubuntu 13.10,最终设法为我的 nVidia 卡安装了正确的驱动程序(使用 bumblebee),glxinfo 最终显示我支持 OpenGL 4.20。所以,最后,对于我正在从事的项目,我需要在 Chrome 或 Firefox(我更愿意在 Chrome 中使用)中运行 WebGL 来测试我正在开发的程序。我相信这可能与我的板载 Intel HD5000 发生冲突?
当我尝试在 Firefox 中运行 WebGL .html 文件时,我在终端中得到了以下信息:
(process:8315): GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed
OpenGL Warning: glFlushVertexArrayRangeNV not found in mesa table
OpenGL Warning: glVertexArrayRangeNV not found in mesa table
OpenGL Warning: glCombinerInputNV not found in mesa table
OpenGL Warning: glCombinerOutputNV not found in mesa table
OpenGL Warning: glCombinerParameterfNV not found in mesa table
OpenGL Warning: glCombinerParameterfvNV not found in mesa table
OpenGL Warning: glCombinerParameteriNV not found in mesa table
OpenGL Warning: glCombinerParameterivNV not found in mesa table
OpenGL Warning: glFinalCombinerInputNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterivNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glDeleteFencesNV not found in mesa table
OpenGL Warning: glFinishFenceNV not found in mesa table
OpenGL Warning: glGenFencesNV not found in mesa table
OpenGL Warning: glGetFenceivNV not found in mesa table
OpenGL Warning: glIsFenceNV not found in mesa table
OpenGL Warning: glSetFenceNV not found in mesa table
OpenGL Warning: glTestFenceNV not found in mesa table
ATTENTION: default value of option force_s3tc_enable overridden by environment.
OpenGL Warning: Unimplemented glxMakeCurrent call with GLXPixmap passed, unexpected things might happen.
OpenGL Warning: Failed to get windows geometry for 0x7ff7e0b8d800, try xwininfo
OpenGL version detected: 210
OpenGL Warning: Unknown program 0
OpenGL version detected: 210
OpenGL Warning: Unknown program 0
OpenGL version detected: 210
OpenGL Warning: Unknown program 0
OpenGL Warning: Unimplemented glxMakeCurrent call with GLXPixmap passed, unexpected things might happen.
OpenGL Warning: Failed to get windows geometry for 0x7ff7d14b3800, try xwininfo
OpenGL version detected: 210
OpenGL Warning: Unknown program 0
OpenGL Warning: Unimplemented glxMakeCurrent call with GLXPixmap passed, unexpected things might happen.
OpenGL Warning: Failed to get windows geometry for 0x7ff7d14b3800, try xwininfo
OpenGL version detected: 210
OpenGL Warning: Unknown program 0
在 Chrome 中我得到以下信息:
OpenGL Warning: glFlushVertexArrayRangeNV not found in mesa table
OpenGL Warning: glVertexArrayRangeNV not found in mesa table
OpenGL Warning: glCombinerInputNV not found in mesa table
OpenGL Warning: glCombinerOutputNV not found in mesa table
OpenGL Warning: glCombinerParameterfNV not found in mesa table
OpenGL Warning: glCombinerParameterfvNV not found in mesa table
OpenGL Warning: glCombinerParameteriNV not found in mesa table
OpenGL Warning: glCombinerParameterivNV not found in mesa table
OpenGL Warning: glFinalCombinerInputNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterivNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glDeleteFencesNV not found in mesa table
OpenGL Warning: glFinishFenceNV not found in mesa table
OpenGL Warning: glGenFencesNV not found in mesa table
OpenGL Warning: glGetFenceivNV not found in mesa table
OpenGL Warning: glIsFenceNV not found in mesa table
OpenGL Warning: glSetFenceNV not found in mesa table
OpenGL Warning: glTestFenceNV not found in mesa table
ATTENTION: default value of option force_s3tc_enable overridden by environment.
OpenGL Warning: glXChooseFBConfig returning NULL, due to attrib=0x2, next=0x20
[8501:8501:0119/161214:ERROR:gl_surface_glx.cc(739)] glXChooseFBConfig failed.
[8501:8501:0119/161214:ERROR:gpu_info_collector.cc(27)] gfx::GLContext::CreateOffscreenGLSurface failed
[8501:8501:0119/161214:ERROR:sandbox_linux.cc(142)] InitializeSandbox() called with multiple threads in process gpu-process
OpenGL Warning: glXChooseFBConfig returning NULL, due to attrib=0x2, next=0x20
[8501:8501:0119/161214:ERROR:gl_surface_glx.cc(739)] glXChooseFBConfig failed.
[7:7:0119/161214:ERROR:command_buffer_proxy_impl.cc(164)] Failed to initialize command buffer service.
OpenGL Warning: glXChooseFBConfig returning NULL, due to attrib=0x2, next=0x20
[8501:8501:0119/161214:ERROR:gl_surface_glx.cc(739)] glXChooseFBConfig failed.
[7:7:0119/161214:ERROR:command_buffer_proxy_impl.cc(164)] Failed to initialize command buffer service.
我的 nVidia 显卡是 765GTXM。当我在 Windows 中运行完全相同的文件时,一切都运行顺利。
答案1
我在使用 Chromium 时也遇到了类似的问题(下载 Chrome 时也遇到了)。事实证明,WebGL 仍属于实验性功能,因此默认情况下它处于关闭状态。
要打开它,请在地址栏中输入以下地址:
chrome://flags
然后按回车键(或刷新)。
然后选择 覆盖软件渲染列表
然后您必须关闭 Chrome(或 Chromium)才能使更改生效。
已排序。=)