pheedsta Asked: 2025-01-06 13:15:37 +0800 CST2025-01-06 13:15:37 +0800 CST 2025-01-06 13:15:37 +0800 CST 如何计算 Unity 中 CharacterController 圆边缘的矢量? 772 在 Unity 中,我需要将 CharacterController 从 v2 移动到 v3。我有以下信息:圆的中心点 (v1);圆外的当前角色位置 (v2);角度 (a)。如何计算 CharacterController 的移动向量,使其从 v2 移动到 v3? unity-game-engine 1 个回答 Voted Best Answer shingo 2025-01-06T14:38:02+08:002025-01-06T14:38:02+08:00 v3 = Quaternion.Euler(0, a, 0) * (v2 - v1) + v1 motion = v3 - v2 解释: v2 - v1:以 v1 为原点的 v2 向量 Quaternion.Euler(0, a, 0) *:将上述向量绕 y 轴逆时针旋转 1a度。如果这是 2D,则需要绕 z 轴旋转 + v1:获取世界空间中的 v3 位置 v3 - v2:移动向量从v2到v3
解释:
v2 - v1
:以 v1 为原点的 v2 向量Quaternion.Euler(0, a, 0) *
:将上述向量绕 y 轴逆时针旋转 1a
度。如果这是 2D,则需要绕 z 轴旋转+ v1
:获取世界空间中的 v3 位置v3 - v2
:移动向量从v2到v3