【发布时间】:2015-02-10 20:32:05
【问题描述】:
在 IE11 版本 11.0.9600.16428 及以下版本中,某些 WebGL 方法无法正常工作(如此处所述:https://github.com/mrdoob/three.js/issues/3600)
一个例子是方法clearStencil。问题是该方法存在,但无法正常工作。我想检测到这一点并给用户一些反馈。我尝试了 Three.js 中的 Detector.js,但它只检查浏览器和显卡是否支持 WebGL,而不检查它们是否支持所有相关功能。
我尝试像这样进行 WebGL 检查:
var supportsWebGL=function(){
if(Detector.webgl){
var _canvas = document.createElement( 'canvas' );
var _gl = _canvas.getContext( 'webgl' ) || _canvas.getContext( 'experimental-webgl' );
try{
_gl.clearStencil( 0 );
}catch(e){
return false;
}
return true;
}else{
return false;
}
}
在 IE11 (11.0.9600.16428) 中,supportsWebGL 方法返回 true,但给了我这样的错误:
WEBGL11095:无效操作:clearStencil:当前没有方法 支持。
现在我希望我的方法 supportsWebGL 检测到这种不兼容并返回 false。有谁知道怎么做?
【问题讨论】:
标签: javascript three.js webgl internet-explorer-11 browser-support