一、角度相关
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Lesson7 : MonoBehaviour
{
void Start()
{
//相对世界坐标的角度
//想要得到Inspector面板上显示的角度,并非使用transform.rotation,而是transform.eulerAngles
print(this.transform.eulerAngles);
//相对父对象的角度
print(this.transform.localEulerAngles);
//注意:1.同位置一样,角度也无法单独对x、y、z其中一个值进行修改,只能使用Vector3进行整体修改
// 2.通过欧拉角得到的角度 不会出现负数,虽然Inspector显示出了负数,但是 通过此代码得到的欧拉角 始终 都是0~360
}
}
二、旋转相关
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Lesson7 : MonoBehaviour
{
void Update()
{
//自己手动计算:省略,和位置的计算差不多,不停改变角度即可
//用API计算
//1.自转
//参数1 旋转的角度 和 旋转的速度
//参数2 相对哪个坐标系旋转(默认不填 就是相对于自己的坐标系进行旋转)
this.transform.Rotate(new Vector3(0, 5, 0) * Time.deltaTime, Space.World);
//补充:另外一种写法
//相对于某个轴转
//参数1 相对于哪个轴旋转
//参数2 旋转的角度 和 旋转的速度
//参数3 相对哪个坐标系旋转(默认不填 就是相对于自己的坐标系进行旋转)
this.transform.Rotate(Vector3.right, 10 * Time.deltaTime, Space.World);
//2.相对于某一个点旋转
//参数1 先对于哪个点旋转
//参数2 相对于参数1的那个点 的 哪一个轴旋转
//参数3 旋转的角度 和 旋转的速度
//这样写 就是相对于(0, 0, 0)点 的 y轴 进行旋转
this.transform.RotateAround(Vector3.zero, Vector3.up, 50 * Time.deltaTime);
}
}
文章来源地址https://www.toymoban.com/news/detail-632379.html
文章来源:https://www.toymoban.com/news/detail-632379.html
到了这里,关于【Unity】Transform—游戏物体的角度和旋转的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!