我们项目也遇到这个问题了,不是100%报错,但是报错日志这种信息还不少,都是线上发生的,本地未发生过,求大神答疑解惑!!!
GPU 崩溃导致的。
根据 https://www.khronos.org/webgl/wiki/HandlingContextLost
这个问题引擎不太容易处理,建议你们在网页里加个监听,出错后刷新网页。
MARK
2.4.3 经常会崩溃
我写完代码 切换到 引擎软件后, 引擎软件的 控制台 里 就会 不停的显示
TypeError: Failed to execute ‘shaderSource’ on ‘WebGLRenderingContext’: parameter 1 is not of type ‘WebGLShader’.
at _createShader (D:\Creator\resources\engine\bin.cache\dev\cocos2d\renderer\gfx\program.js:203:6)
at Program.link (D:\Creator\resources\engine\bin.cache\dev\cocos2d\renderer\gfx\program.js:94:22)
at ProgramLib.getProgram (D:\Creator\resources\engine\bin.cache\dev\cocos2d\renderer\core\program-lib.js:275:26)
at ForwardRenderer._draw (D:\Creator\resources\engine\bin.cache\dev\cocos2d\renderer\core\base-renderer.js:344:32)
at ForwardRenderer._drawItems (D:\Creator\resources\engine\bin.cache\dev\cocos2d\renderer\renderers\forward-renderer.js:309:14)
at ForwardRenderer._opaqueStage (D:\Creator\resources\engine\bin.cache\dev\cocos2d\renderer\renderers\forward-renderer.js:342:10)
at ForwardRenderer._render (D:\Creator\resources\engine\bin.cache\dev\cocos2d\renderer\core\base-renderer.js:236:7)
at ForwardRenderer.render (D:\Creator\resources\engine\bin.cache\dev\cocos2d\renderer\renderers\forward-renderer.js:126:12)
at Function.RenderFlow.render (D:\Creator\resources\engine\bin.cache\dev\cocos2d\core\renderer\render-flow.js:286:12)
at Object.render (D:\Creator\resources\engine\bin.cache\dev\cocos2d\core\renderer\index.js:209:18)
兄弟解决了么
没有…
我这经常崩溃的项目 是个 使用了 jpg 图片的, 项目 每次打开以后 creator 内存占用 4个多G
而且这个项目 曾经 从2.43 降级 2.3x 又升级 2.43
不知道和以上问题有无关联…总之 我感觉是内存占用太多 导致的崩溃
我的其他项目 基本正常…
我用的win10 笔记本不知道是不是 有关
这个不是解决方案啊,
我用的2.4.3,也是经常出现这个报错,然后就要重启creator,体验非常差.
每次打开creator都占用4个G内存,然后编辑一会代码或者调试,就占有8个G 内存甚至更高.
用的intel核显吗?
我也是,每次这样只能重启
你好,目前没有方法解决这个问题。这是 webGL 自身的安全措施,当它认为 GPU 占用过高的时候,就会关闭一个或者更多的 webGL 网页。
一般不仅有这个报错,还会有这个警告:
"WARNING: Too many active WebGL contexts. Oldest context will be lost."
https://www.khronos.org/webgl/wiki/HandlingContextLost 文中的方式我也已经尝试,均不能报错解决问题。
如果使用网页刷新或者 restartContext 的方式,让网页重新获得有效的 webGL 绘图上下文,那么 webGL 也会让其它 webGL 网页的上下文关闭
不知道为啥GPU会占用过高 一打开项目GPU就从很低很低突然到100%了
查了查猜测可能是图片分辨率太大了 目前缩小了之后没报错
我 这两天也遇到这个问题了,换了引擎版本一样,感觉是电脑问题,但是我电脑之前用哪个版本引擎都没问题,不知道您是怎么解决的?我现在只能重启
几年过去了,还是这样子哦,能有什么办法,重启了
我们正在大力推动场景原生化,可以彻底抛弃 WebGL
2.x能用上吗
抱歉不能。
这个问题经常遇到过,尤其是项目大的时候,目前还没解决。
可以试试 3.x,很少遇到了
这问题还有人有其他方案吗,进去就白屏,然后还有声音能交互。