面向组件编程之Unity 11.Quaternion类属性 线性插值Lerp() 关键字:按键控制游戏物体朝向

using System.Collections;
using System.Collections.Generic;
using UnityEngine;



public class CarX : MonoBehaviour
{
    //两个四元数,存储左右方向
    Quaternion qua;
    Quaternion qub;

    // Use this for initialization
    void Start()
    {
        //Quaternion.LookRotation 注视旋转
        //static function LookRotation(forward : Vector3, upwards: Vector3 = Vector3.up) : Quaternion
        //Description描述
        //Creates a rotation that looks along forward with the the head upwards along upwards
        //创建一个旋转,沿着forward(z轴)并且头部沿着upwards(y轴)的约束注视。也就是建立一个旋转,使z轴朝向view y轴朝向up。
        //Logs an error if the forward direction is zero.
        //如果forward方向是0,记录一个错误。

        //LookRotation注视旋转
        qua = Quaternion.LookRotation(transform.right);
        qub = Quaternion.LookRotation(-transform.right);
    }

    // Update is called once per frame
    void Update()
    {
         
        //A D 控制旋转
        bool isGe = Input.GetKey(KeyCode.A);
        bool isGef = Input.GetKey(KeyCode.D);
        if (isGe)
        {
            transform.rotation = Quaternion.Lerp(transform.rotation, qub, Time.deltaTime);
        }
        else if (isGef)
        {
            transform.rotation = Quaternion.Lerp(transform.rotation, qua, Time.deltaTime);
        }

    }
}

你可能感兴趣的:(面向组件编程之Unity 11.Quaternion类属性 线性插值Lerp() 关键字:按键控制游戏物体朝向)