感觉3.8.0后的spine还有很大完善空间。
let skeletons = nodeSub.getComponentsInChildren(sp.Skeleton)
if (skeletons) {
skeletons.forEach((skeleton)=> {
// skeleton.defaultCacheMode = sp.Skeleton.AnimationCacheMode.SHARED_CACHE
})
}
设置defaultCacheMode会崩溃。
我用了3.8.2版本的引擎,也出现了这个问题,我是频繁的打开关闭界面导致的。界面里面用了dragonBones的东西,异步加载了远程的龙骨数据
这个感觉是 2d 底层渲染的报错了。能否提供一个复现demo给我们排查一下?谢谢。
大佬3.8.3这周会出社区测试版吗
3.6.3也有同样的崩溃问题
比较容易复现的方法: 频繁切换动作或者切换spine,有概率出现。

[WARN]: Triple buffer enabled for infrequently-updated buffer, consider using MemoryUsageBit::DEVICE instead
这个警告必现方法,只要有spine,两个不同的spine进行切换,有大概率会出现警告,然后释放Spine ,执行 sys.garbageCollect() 也有大概率。


3.8.2的构建配置没有看见有地方 fallback到 asmjs啊.要设置什么?
哥们 你知道上班突然笑起来有多奇怪嘛 
大佬,请问解决了没有呀@
没有的,还在排查,Xcode的日志很容易出现。目前我还不太确定是否会影响游戏,论坛里说是不影响的。后续这边技术预研,如果搞定了,就跟你同步一下。
我也是一堆这个报错,然后GC了,就必定奔溃
官方在另外一个帖子回复,好像这个不会影响,但不确定
需要2个spine的骨骼大于300, 反复切换并马上播放动画。 会比较容易出现
单个角色替换很少概率出现,一般是激烈战斗时,一堆技能spine在池子内被大量复用。
小于100骨骼的话,我之前试了一直没出现
测的话,可以试试50个spine,每隔1帧就执行一次分别加载10个skeletonData并复用在10个旧spine上面, 50个spine循环复用。
原生底下我怀疑,虽然有清理机制,但它不是在当前帧清理,只要复用间隔足够短,它清理速度赶不上复用产生的泄漏速度,就会崩
spine闪退每个版本都有,太恶心了。
这个是会出现闪退问题 规避的方法是 第一个spine动画内容最多的放前面 他这个好像是内存溢出导致的 之前我也碰到了花了几个小时才规避了
