1、Transform、rotation、eulerAngles关系
Transform里包含了rotation变量和eulerAngles
rotation里有包含了eulerAngles变量
使用示例:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class QuaternionTest : MonoBehaviour
{
public Transform A, B;
public Quaternion rotation = Quaternion.identity;
Vector3 eulerAngle = Vector3.zero;
float speed = -10.0f;
float tSpeed = 0.0f;
// Use this for initialization
void Start()
{
}
// Update is called once per frame
void Update()
{
tSpeed += speed * Time.deltaTime;
//第一种方式:将Quaternion实例对象赋值给transform的rotation
rotation.eulerAngles = new Vector3(0.0f, tSpeed, 0.0f);
A.rotation = rotation;
//第二种方式:将三位向量代表的欧拉角直接赋值给transform的eulerAngle
B.eulerAngles = new Vector3(0.0f, tSpeed, 0.0f);
}
}
2、关键成员方法(1)LookRotation
public static Quaternion LookRotation(Vector3 forward);
public static
Unity中的Quaternion操作:旋转与变换

本文介绍了Unity引擎中Quaternion类的几个关键概念和方法,包括rotation与eulerAngles的关系,以及LookRotation用于面向目标,RotateTowards实现平滑旋转,Lerp和Slerp进行插值旋转。同时阐述了Quaternion与Vector3结合使用进行对象移动的方式。
最低0.47元/天 解锁文章
1431





