Unity C#CharacterController脚本

时间:2017-07-14 23:49:17

标签: c# unity3d

我有一个简单的脚本统一附加到球模型。为了控制球,我试图模仿文档提供的this示例。我收到的问题是我的球视觉旋转速度是其物理旋转变化的一半。

Ex:当你进行360度物理旋转时,球会在视觉上旋转180度。

public class PlayerController:MonoBehaviour {

public float MoveSpeed;
public float RotationSpeed;
CharacterController controller;

void Start()
{
    controller = GetComponent<CharacterController>();
}

void Update()
{
    transform.Rotate(new Vector3(0, Input.GetAxis("Horizontal") * RotationSpeed, 0));
    Vector3 forward = Input.GetAxis("Vertical") * transform.TransformDirection(transform.forward) * MoveSpeed;

    controller.Move(forward);
}

我想要完成的是球与物理控件的旋转对齐旋转。

1 个答案:

答案 0 :(得分:3)

只是摆脱Step 10/11 : RUN (cd node_modules/suman && ls -a) ---> Running in 0715d56e23a9 . .. .babelrc .npmignore .tscmultiwatch README.md cli cli.d.ts cli.js <<< dis my file config dist dts examples lib package.json scripts webpack.config.js ,因为你试图将变换的局部前向矢量变换为同一变换的前向矢量。

只需使用简单的transform.TransformDirection(transform.forward)