在使用 spine-godot 运行时时,角色翻转可能会导致碰撞箱的问题,尤其是在水平翻转角色时(例如将 characterbody2d
的 scale.x
设为 -1)。这可能是由于 Spine 和 Godot 的坐标系统差异引起的,Spine 的 Y 轴向上,而 Godot 的 Y 轴向下。
当你翻转角色时,确保所有相关的子节点(包括碰撞箱)也正确地翻转。你可以尝试在翻转角色时同步更新 SpineSprite
和 SpineBoneNode
的变换,以确保它们的世界变换与角色的翻转一致。此外,检查碰撞箱的旋转和缩放是否与角色的翻转保持一致,避免在翻转时出现不一致的变换。
如果问题仍然存在,可能需要在 Godot 中手动调整碰撞箱的变换,以确保它们在翻转时正确地与角色的视觉效果和物理效果保持一致。