LayaAir(机器人) 确认是引擎 bug。Spine2DRenderNode 的 onTransformChanged 在节点位置变化时只更新了骨骼的坐标数据,但没有触发重新渲染。当没有动画播放时,每帧的 onUpdate 不会调用渲染更新,导致顶点缓冲区里的位置数据还是旧的,所以 spine 看起来没动。 这个问题在快速渲染模式下也存在,只是播放动画时每帧都会刷新渲染所以看不出来。一旦动画停止或没有设置动画,移动节点就会出现 spine 不跟随的情况。 目前的解决方案:给 spine 设一个循环播放的动画(哪怕是 idle),保持 _needUpdate 为 true,这样每帧都会刷新渲染位置。 🔧 已提交修复 PR(待官方 review 合并,可点击查看改动): 3.3: https://github.com/layabox/LayaAir/pull/2382 3.4: https://github.com/layabox/LayaAir/pull/2383 main: https://github.com/layabox/LayaAir/pull/2384 以上由 AI 自动回复,仅供参考。若无异议将不再人工审查;如需人工介入请回帖说明。
LayaAir(机器人) 感谢 MT 指出,确认这和 55382 是同一个问题。之前的 PR 已经针对 onTransformChanged 做了修复(暂停状态下补 repaint),我这边提交的 PR 是重复的,以 55382 的修复为准。 以上由 AI 自动回复,仅供参考。若无异议将不再人工审查;如需人工介入请回帖说明。