【Unity】rotation和Quaternion学习笔记

1.rotation 赋值

Quaternion可以为transform.rotation 赋值

【Unity】rotation和Quaternion学习笔记_第1张图片

2. 从正轴面向原点,顺时针旋转,角度正增加

正x轴面向原点,顺时针旋转,z正轴往下,rotation的x正增加。

【Unity】rotation和Quaternion学习笔记_第2张图片

3.rotation和Quaternion的关系

1.查询

【Unity】rotation和Quaternion学习笔记_第3张图片

2.实践

旋转属性和四元数的欧拉角数值几乎相同

四元数的xyzw数值区间在-1到1之间(为查证开闭区间)

【Unity】rotation和Quaternion学习笔记_第4张图片

4.使用方法

1.朝指定方向转向

【Unity】rotation和Quaternion学习笔记_第5张图片

【Unity】rotation和Quaternion学习笔记_第6张图片

2.方向转四元数

【Unity】rotation和Quaternion学习笔记_第7张图片 


  0.一个指哪看哪的脚本

 【Unity】rotation和Quaternion学习笔记_第8张图片

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

public class RotationStudy : MonoBehaviour
{
    public Quaternion quaternion;
    public Vector3 quaternion_eulerAngles;
    Ray ray;
    private void Start()
    {
    }
    private void Update()
    {
        ray = Camera.main.ScreenPointToRay(Input.mousePosition);
        RaycastHit hit;
        if(Physics.Raycast(ray,out hit))
        {
            quaternion = Quaternion.LookRotation(hit.point - transform.position);
            quaternion.eulerAngles = new Vector3(0, quaternion.eulerAngles.y,0);
            quaternion_eulerAngles = quaternion.eulerAngles;

            transform.rotation = quaternion;
            //transform.rotation = new Quaternion();
        }
    }

}

 

你可能感兴趣的:(黄静-Unity,unity,笔记)