虽然描述很清晰,还是希望你可以提供个复现的demo,减少排查方法上出现奇异的情况。
这是报错信息,zip文件中有 cocos2d-js-min.js 文件和min.js.map文件
你这边提供资源是压缩的引擎源码,没什么帮助啊!
从日志上面看,应该是材质被释放或者丢失,你可以自定义引擎,在错误的代码位置做下判断,调试看看这个对象是什么,再进一步分析材质丢失的原因。
MaskAssembler fillBuffers 中 applyClearMask mask 的_clearMaterial 是null,打印节点名字是我使用的ScrollView的Mask,这个是什么原因,如何修改
我把mask 的 _clearMaterial 为null的屏蔽了也不行,接下来的代码会报错
确认下Mask是属于哪个节点的,在跟踪下对应节点的Mask变化,可以自己调试跟踪下堆栈,添加些日志。
mask是ScrollView的下的,原因是MaskAssembler fillBuffers的时候先报了的错误,mask的_clearMaterial 和_enableMaterial是null,在接下来的代码中调用applyStencil的时候,调用material.effect就会报这个错
在 Mask _activateMaterial中报错了,错误信息闪的太快,没有看到,之后就有了Error 9000的错误
这个情况没遇到过,你打印下 getBuiltinMaterial 传入的name值,是不是第一次使用就报错了?确认模块设置是不是对的,全部勾选跑跑看。
getBuiltinMaterial 第一次获取 2d-sprite的时候报的错
模块设置全部勾选还是会出错
不可能,你界面都是显示,这个材质应该存在的,还是给个demo,复现的平台,复现方法,私信给我,我帮你看下。
感谢反馈,这个问题已经提交处理了。
您好,这个有临时处理方案吗,我也遇到了,2.2.1版本