我试图在多个浏览器中检测WebGL支持,并遇到以下情况。 Firefox的当前版本的出现使用下面的检查报告利好支撑,即使访问者的显卡是列入黑名单的和/或WebGL是禁用:检测WebGL支持的正确方法?
if (window.WebGLRenderingContext) {
// This is true in Firefox under certain circumstances,
// even when WebGL is disabled...
}
我试图要求我的用户使用,以使WebGL的以下步骤。这在某些情况下有效,但并非总是如此。显然,这不是我可以请广大市民:
- 类型about:config中在Firefox地址栏
- 要启用的WebGL,设置启用webgl.force-真
这导致我创建了自己的方法来检测支持,它使用jQuery来注入一个canvas元素来检测支持。这吸收了我在各种WebGL库和插件中发现的许多技术。麻烦的是,测试非常困难(关于下面的链接是否适合您的任何评论都非常感谢!)。为了使这是一个客观的问题,我想知道是否有普遍接受的方式来检测所有浏览器 WebGL支持。
测试网址:
伊克,我不知道有能超过'实验-webgl' WebGL的背景下更多的方法,谢谢为p注意到这一点。 – 2012-08-08 18:47:08
你是什么意思你的方法很难测试?你是否担心会产生假阳性/阴性?在我看来,如果你要求一个webgl上下文而没有获得,那么你的应用程序无法继续。除非我错过了什么? – 2012-08-08 18:48:41
@MattGreer,很难进行测试,因为找到具有Firefox和黑名单视频卡和/或不支持的图形的特定组合的测试机器很难。具体来说,我试图找出在什么情况下,我的测试方法将在最新版本的Firefox中返回'false'。 – 2012-08-08 18:54:43