Creator 2.3.x 版本, 原生平台加载 spine3.6.x的资源闪退

之前老项目是cretor 2.2.1版本, 升级到2.3.2后 项目中一个spine资源为3.6.50版本, 放入编辑器场景中, 模拟器预览就闪退. 报错信息在下方. 网页版可以显示, 但显示效果也有点问题.
升级到2.3.3问题照旧.

将有问题的资源用spine3.8.x重新导出,放入编辑器中模拟器预览, 正常, 不闪退.

根据报错是在 ContainerUtil.h 的49行, findWithName(Vector<T*>& items, const String& name) 方法,
assert(name.length() > 0) 断言导致.

弱弱的问一下, 为啥引擎中要有这么多断言啊, 参数或资源有问题, 不处理不就可以了, 或者报个错, 动不动就闪退体验太差了吧~ 而且很难查到是哪个资源有问题, 只能将场景中所有的spine按个排查.

  • Creator 版本:2.3.2, 2.3.3

  • 目标平台: Android / 模拟器

  • 详细报错信息,包含调用堆栈:
    Simulator: Assertion failed: (name.length() > 0), function findWithName, file /Users/nantas/jenkins/workspace/Creator_2D/cocos2d-x-lite/mac/cocos2d-x-lite/cocos/editor-support/spine/ContainerUtil.h, line 49

  • 重现方式:将spine资源拖入场景, 模拟器运行, 闪退

  • 出现概率:100%

  • 额外线索:测试工程已上传

spine_3_6_test.zip (1.6 MB)

@jare @EndEvil

这个断言是提示你spine资源是有问题,你运行web版本,会给错误提示,看下具体是什么资源有问题,修复一下。

这个我之前也遇到过 2.3.x升级了spine的runtime 如果你要升级的话最好用3.8.x 从新倒出一遍 因为spine的有些配置是不一样的 不能重新倒出的话最好不要升级(我出问题的是用了一个路径的东西 3.8不显示了 需要重新倒出)

好的. 我再查一下

遇到类似问题,请问怎么解决的