1. 首页
  2. three.js

three.js未激发Webglcontextrestored事件

您好,n我正在为我的用户制作一种小型试飞应用程序,目的是在他们使用主应用程序之前测量他们的计算机性能,这样我就可以为他们提供更加定制的质量体验。n在我做的一个测试中,我用大量大纹理填充场景。如果他们的GPU无法处理内存压力,我想处理一个丢失的WebGL上下文,并继续我的测试(例如,看看他们的GPU是否可以处理我的“中等”大小的纹理)。n我的问题是,上下文丢失后,它似乎永远无法恢复。我不太熟悉上下文丢失/恢复主题,但据我所知,这应该是自动发生的。它没有,至少在我的电脑上没有。有什么想法吗?n谢谢穆根87在第4篇文章中解决了这个问题对不起,我不知道。我只能假设导致GPU崩溃的web应用可能被浏览器列入黑名单,因此不允许进行上下文还原。n当three.js识别到上下文丢失时,它应该在浏览器控制台中打印以下警告:n3.webgl渲染器:上下文丢失。n但是,当用户代理恢复上下文时,您应该看到:n3.webgl渲染器:已还原上下文。n如果未显示此日志,则浏览器似乎不愿意还原WebGL渲染上下文。n通常,three.js能够在进行上下文恢复时恢复其内部,因此它通常应该在下一个有效帧中渲染场景。n但是为什么浏览器(在我的情况下是标准chrome)不愿意恢复上下文?n对不起,我不知道。我只能假设导致GPU崩溃的web应用可能被浏览器列入黑名单,因此不允许进行上下文恢复n Webglcontextrestored event not firedn

three.js未激发Webglcontextrestored事件 为WP2原创文章,链接:https://www.wp2.cn/three-js/three-js%e6%9c%aa%e6%bf%80%e5%8f%91webglcontextrestored%e4%ba%8b%e4%bb%b6-2/