Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 检测软件与硬件webGL渲染模式_Javascript_Webgl_Mapbox_Mapbox Gl_Mapbox Gl Js - Fatal编程技术网

Javascript 检测软件与硬件webGL渲染模式

Javascript 检测软件与硬件webGL渲染模式,javascript,webgl,mapbox,mapbox-gl,mapbox-gl-js,Javascript,Webgl,Mapbox,Mapbox Gl,Mapbox Gl Js,我试图用MapboxGL捕捉到一个错误,当IE版本将webGL渲染模式从硬件切换到软件时,该错误无法处理。我尽可能地查阅文档和控制台日志,但找不到任何文档化的方法来确定webGL是否使用硬件或软件渲染模式 有什么想法吗?您可以使用检查浏览器是否可以在硬件渲染模式下运行GL JS if(mapboxgl.supported({failIfMajorPerformanceCaveat:true})){ //硬件模式!:D }否则{ //软件模式:( } 是否尝试使用{failIfMajorPerf

我试图用MapboxGL捕捉到一个错误,当IE版本将webGL渲染模式从硬件切换到软件时,该错误无法处理。我尽可能地查阅文档和控制台日志,但找不到任何文档化的方法来确定webGL是否使用硬件或软件渲染模式


有什么想法吗?

您可以使用检查浏览器是否可以在硬件渲染模式下运行GL JS


if(mapboxgl.supported({failIfMajorPerformanceCaveat:true})){
//硬件模式!:D
}否则{
//软件模式:(
}

是否尝试使用
{failIfMajorPerformanceCaveat:true}创建上下文
捕获它?它在加载时执行,但在运行时不执行。因此,如果加载条件会严重降低性能,但在运行时发生问题,它将阻止您运行。这在加载时有效,但在运行时IE从硬件切换到软件时不会动态更改。@kamerob您尝试过重新初始化t吗画布上下文?我的意思是,没有浏览器会突然删除对任何仍在运行的对象的所有引用,如果这就是您所指的。
<script src='mapbox-gl-supported.js'></script>
<script>
if (mapboxgl.supported({failIfMajorPerformanceCaveat: true})) {
    // hardware mode! :D
} else {
    // software mode :(
}
</script>