内容概要:
- 生命周期函数
- vector3 位置 方向 缩放旋转等信息
- Vector3欧拉角和Quaternion四元素
- unity脚本执行顺序设置
一 生命周期函数
方法 | 说明 |
---|---|
Awake | 最早调用,所以一般可以再此实现单例模式 |
OnEnable | 组件激活后调用,在Awake后会调用一次 |
Start | 在Update之前调用一次,在OnEnable之后调用,可以在此设置一些初始化值 |
FixeUpdate | 固定频率调用方法。每帧调用一次 每次调用与上次调用的时间间隔相同 |
Update | 帧率调用方法,每帧调用一次,每次调用与上次调用的时间间隔不相同 |
LateUpdate | 在Update每调用完一次后 紧跟着调用一次 |
OnDisable | 在OnEnable相反。组件未激活时调用 |
OnDestroy | 被销毁后调用一次 |
二 Vector3(即是位置 也是方向)
在三维世界中,最重要的就是确定物体在三维世界中 的位置、大小和缩放等信息。在Unity中,Vector3结构体就是用来表示这些信息的,此外也用Vector2来表示二维世界中的信息。
Vector3结构体由x、y、z这3个数值组成,表示了一个向量;除了可以用来表示向量外,还可以用来表示位置、旋转和缩放等信息。 所以在使用Vector3的时候一定要先确定这里的Vector3表示的是什么信息,再进行使用。
基础用法
//向量(从(0,0,0)指向(1,1,1)),坐标,旋转,缩放
//Vector3得具体情况具体分析
Vector3 v = new Vector3(1, 1, 1);
Vector3 v1 = new Vector3(45, 90, 1);
Vector3 v2 = new Vector3(1, 1, 0.5f);
进阶用法
Vector3 v = new Vector3(1, 1, 1);
v = Vector3.zero;
v.x = 2;
v.y = 2;
v.z = 2;
三 欧拉角和四元素
// 欧拉角
Vector3 rotate = new Vector3(60, 45, 0)
// 四元素
Quaternion quaternion = Quaternion.identity;
// 欧拉角转四元素
quaternion = Quaternion.Euler(rotate);
// 四元素转欧拉角
Debug.Log(quaternion.eulerAngles);
1.简介
Quaternion又称四元数,由x,y,z和w这四个分量组成,四元数的乘法不符合交换律。从明确地角度而言,四元数是复数的不可交换延伸。如把四元数的集合考虑成多维实数空间的话,四元数就代表着一个四维空间,相对于复数为二维空间。
2.Unity里面的Transform组件里的Rotation是四元数,但是他是以欧拉角(Vector3)的形式展现在我们面前,目的就是为了方便我们修改。因此,我们给Rotation直接赋值的时候,也只能用Quaternion赋值。意识到这点很重要
rotation.eulerAngles = new Vector3(0, 30, 0);
3.四元数q转欧拉角v
Vector3 v = q.eulerAngles;
4.欧拉角v转四元数q
Quaternion q = Quaternion.Euler(v);
5.获取某物体的旋转角度
transform.rotation:物体旋转角度的四元数(受父物体影响)
transform.localRotation:物体旋转角度的四元数(不受父物体影响)
transform.eulerAngles:物体旋转角度,(Inspector面板中Rotation显示的数,受父物体影响)
transform.localEulerAngles:物体旋转角度,(Inspector面板中Rotation显示的数,不受父物体影响)
6.赋值操作示列
PlayerEx.transform.position = new Vector3(1f, -1f, 1);
PlayerEx.transform.rotation = Quaternion.Euler(0 , - 30, 0);
四,动画资源网站
五 unity脚本执行顺序设置
在 Unity 中,如果有多个脚本,并且它们之间的执行顺序很重要,可以通过编辑器设置来确保它们按照自己期望的顺序执行。这对于确保某些脚本在其他脚本之前执行非常有用。在这篇文章中,将向会展示如何在 Unity 编辑器中设置脚本的执行顺序。
步骤一:打开编辑器设置
首先,打开 Unity 项目。然后,按照以下步骤打开编辑器设置:
在 Unity 编辑器的顶部菜单栏中,选择“编辑”(Edit)。
在下拉菜单中,选择“项目设置”(Project Settings)。
步骤二:设置脚本执行顺序
在项目设置窗口中,会看到一个名为“脚本执行顺序”的选项卡。点击它,将看到一个脚本列表,其中列出了项目中的所有脚本以及它们当前的执行顺序。
也可以随便点击一个脚本然后点击Inspector面板(右上角)的Execution Order…按钮
要设置脚本的执行顺序,可以执行以下操作之一:
拖动脚本: 在列表中,可以通过点击脚本并将其拖动到所需位置来调整执行顺序。这样,可以确保一个脚本在另一个脚本之前执行,也可以在出现的面板中点击+号,选择要设置顺序的脚本。
设置Default Time值:修改Default Time值为100、200…,注意Default Time值越小,越先执行
步骤三:保存设置
在完成设置后,确保点击项目设置窗口底部的“Apply”按钮,以应用所做的更改。这样就成功地设置了脚本的执行顺序。
示例
假设有两个脚本:ScriptA 和 ScriptB,并且希望 ScriptA 在 ScriptB 之前执行。通过按照上述步骤,在脚本执行顺序列表中将 ScriptA 移动到 ScriptB 之前,然后保存设置,就成功地设置了脚本的执行顺序。
结论
通过在 Unity 编辑器中设置脚本的执行顺序,可以确保它们按照自己期望的顺序执行,从而有效地管理项目中的脚本执行逻辑。这对于确保特定脚本在其他脚本之前或之后执行非常有用,帮助你更好地控制项目的行为和逻辑。