CharacterController2D ===================== CharacterController2D 与内置的 Unity CharacterController 组件类似。它具有以下功能:
CharacterController2D ===================== CharacterController2D 与内置的 Unity CharacterController 组件类似。它具有以下功能:
CharacterController2D 与 Unity 内置的 CharacterController 组件类似。它具有类似的 API(主要是一个接受 delta 移动的 move 方法),并提供了一个坚实的基础,可用于利用 Unity 的 2D 系统创建一个非常稳健的控制器。
附带的演示场景非常简洁,尽可能保持简单。它具有非常基本的输入检测(使用箭头键来移动、跳跃和通过单向平台),以及简单的角色精灵/动画器设置。对于任何有基本 Unity 知识的人来说,阅读和理解这些内容都应该很简单。
设置过程非常简单: 将 CharacterController2D 拖到玩家/敌人 GameObject 上,并在 Inspector 中设置 platformMask 以包含您希望玩家与之碰撞的任何层。如果您将使用单向平台,还可以设置 oneWayPlatformMask。请注意,单向平台应为 EdgeCollider2D。小贴士: 确保您的玩家位于与平台不同的层上,这样它就不会尝试与自己碰撞!您还需要确保 BoxCollider2D 位于中心且水平偏移为零。翻转需要将 scale.x 设置为 -1,因此除了零之外的水平偏移会导致碰撞体四处跳动。
然后,您可以根据自己的喜好调整 totalHorizontalRays 和 totalVerticalRays。在编辑器中,光线将通过 Debug.DrawRay 绘制,这样您可以确保光线分辨率适合您最小的平台大小。要关闭光线调试,只需在 CharacterController2D.cs 文件顶部将 #define DEBUG_CC2D_RAYS 行注释掉。要移动玩家,只需调用 move,并为其提供一个偏移移动(玩家在当前帧中应该移动的物理距离)。您可以订阅 *o
暂无开放 Issues,或尚未同步最近议题。