朝着相机方向旋转角色?

时间:2014-11-15 23:21:07

标签: c# vector 3d unity3d

我想将角色朝着相机指向的方向旋转。

在下面的屏幕截图中,红色光线是从相机到角色的方向,绿色光线是相机指向的方向。

enter image description here

基本上,人物视线应保持与红色矢量垂直,但指向绿色矢量的末端。

这就是我现在正在尝试的。我设法得到了玩家应该转向的方向,如截图所示。绿光是它的视野和蓝光,是我希望他面对的方向。

    // Result vector
    Vector3 directionCam = CameraDirection (transform.position);

    // Show current forward and desired forward
    Debug.DrawRay(character.transform.position, character.transform.forward, Color.green); // Vision
    Debug.DrawRay(character.transform.position, cameraDir, Color.blue); // Desired Vision

我尝试做character.transform.forward = CameraDirection而我设法让他看向正确的方向,身体随机旋转(例如,有时头部在地上,身体在它上面)。

enter image description here

1 个答案:

答案 0 :(得分:0)

这会让你的角色看着相机。

transform.LookAt(Camera.main.transform);