1、Vector3
属性方法
详解
normalized
返回一个规范化向量
magnitude
返回向量的模
sqrMagnitude
返回向量的模的平方
zero
静态属性,返回Vector3(0,0,0)
one
静态属性,返回Vector3(1,1,1)
forward
静态属性,返回Vector3(0,0,1)
back
静态属性,返回Vector3(0,0,-1)
left
静态属性,返回Vector3(-1,0,0)
right
静态属性,返回Vector3(1,0,0)
up
静态属性,返回Vector3(0,1,0)
down
静态属性,返回Vector3(0,-1,0)
Angle
静态方法,返回两个向量的夹角
Distance
静态方法,返回两个点间的距离
Lerp
静态方法,插值运算
Dot
静态方法,两个向量点乘
Cross
静态方法,两个向量叉乘
Unity的Lerp插值运算
float result = Mathf.Lerp(float a, float b, float time)
Vector3 res = Vector3.Lerp(Vector3 startPos, Vector3 endPos, float time)
以上两种方法均为插值运算,第一个是一维插值,第二个是三维插值,其方法含义以第一个方法为例,代表的意义是:
result = a + (b-a) * time, 其中time值在【0,1】范围内起作用,
当time=0时,result = a, 当time=1时,result=b, 当time>1时,result=b
可以利用插值运算来实现各种平滑效果,比如相机的平滑移动,物体的匀速运动
相机的平滑移动:
相机由当前位置移动到targetTrans位置,smooth可调节移动的速度
void Update () {
cameraTrans.position = Vector3.Lerp(cameraTrans.position, targetTrans.position, smooth);
}
物体的匀速运动
物体由startPos位置移动到endPos位置,匀速移动,花了duration时间
public Vector startPos;
public Vector endPos;
public float duration;
public float time;
void Update () {
time += Time.deltaTime;
transform.position = Vector3.Lerp(startPos, endPos, time/duration)
}
2、Quaternion
属性方法
详解
Identity
单位旋转,相当于无旋转
eulerAngles
旋转为欧拉角
Quatemion
使用x、y、z、w分量构造四元数
Angle
返回两个旋转之间的角度
Euler
通过欧拉角创建一个四元数
LookRotation
返回forward向量与参数向量旋转相同的四元数,可以理解为看向某向量
3、Debug
属性方法
详解
Log
在“控制台”中输出一条消息
Logwarning
在“控制台”中输出一条警告消息
LogError
在“控制台”中输出一条错误消息
DrawLine
在指定的起始点和终点之间绘制一条直线
DrawRay
在指定的起始点向一个向量绘制一条直线
Debug.DrawLine (new Vector3(0 ,0 ,0 ), new Vector3 (0 ,10 ,0 ), Color .red );
Debug.DrawRay (new Vector3(0 , 0 , 0 ),new Vector3 (5 , 5 , 5 ),Color .blue );
4、GameObject
属性方法
详解
activeInHierarchy
游戏物体在场景中真正的激活状态,返回值为bool类型
activeSelf
游戏物体在场景中设置的激活状态
tag
游戏物体的标签
layer
游戏物体的图层
transform
游戏物体的transform
name
游戏物体的名称,为继承属性
AddComponent
添加组件
GetComponent
得到某个组件
GetComponents
得到多个组件
GetComponentInChildren
在子物体上得到组件
GetComponentInParent
在父物体上得到组件
SetActive
设置物体的激活状态
Find
静态方法,在场景中根据名称寻找游戏物体并返回
FindWithTag
静态方法,在场景中根据标签寻找游戏物体并返回
FindGameObjectsWithTag
静态方法,在场景中根据标签寻找多个游戏物体并返回
Destroy
静态方法,移除并销毁一个游戏物体,为继承方法
Instantiate
静态方法,复制一个游戏物体,一般用此方法实例化预制件,为继承方法
DontDestroyOnLoad
静态方法,设置此游戏物体在切换场景时不会销毁,为继承方法
5、Time
属性方法
详解
deltaTime
上一帧到这一帧所花的时间
fixedDeltaTime
固定间隔时间
time
游戏开始到现在所花的总时间
timeScale
时间缩放值,默认为1.0
6、Mathf
属性方法
详解
Deg2Rad
角度转弧度
Rad2Deg
弧度转角度
PI
圆周率
Abs
绝对值
Sin/Cos/Tan
正弦/余弦/正切
Asin/Acos/Atan
反正弦/反余弦/反正切
Clamp
将数字限制到一个范围内
Clamp01
将数字限制在0~1内
Lerp
线性插值
Max
返回最大值
Min
返回最小值
Sqrt
返回平方根
7、Application
属性方法
详解
dataPath
游戏数据文件夹路径
persistentDataPath
持久化游戏数据文件夹路径
streamingAssetsPath
StreamingAssets文件夹路径
temporaryCachePath
临时文件夹路径
runInBackground
控制在后台时是否运行
OpenURL
打开一个URL
Quit
退出
8、Scene
Unity提供Scene结构体来代表一个场景
属性方法
详解
buildIndex
返回场景在Build Settings中的索引
isLoaded
返回场景是否已经加载
name
场景名称
path
场景的相对路径
GetRootGameObject
返回场景中的所有根游戏物体
SceneManager类:场景的管理
属性方法
详解
sceneCount
当前已加载场景的数量
CreateScene
创建一个场景
GetActiveScene
得到当前激活场景
GetSceneByName
通过名称返回已加载场景
LoadScene
加载场景
LoadSceneAsync
异步加载场景
SetActiveScene
激活场景
UnloadSceneAsync
移除并销毁场景
属性方法
详解
position
在世界坐标系中的位置
rotation
在世界坐标系中的旋转
eulerAngles
在世界坐标系中的欧拉角旋转
localPosition
相对于父物体的位置
localRotation
相对于父物体的旋转
localScale
相对于父物体的缩放
localEulerAngles
相对于父物体的欧拉角旋转
forward
在世界坐标系中的自身坐标系的蓝色轴向量
up
在世界坐标系中的自身坐标系的绿色轴向量
right
在世界坐标系中的自身坐标系的红色轴向量
LookAt
旋转物体使forward向量指向目标点,也就是看向某个目标点
Rotate
旋转物体
RotateAround
绕着某点旋转物体
Translate
在某一方向与距离上进行移动
childCount
当前Transform的子Transform个数
parent
当前Transform的父Transform
DetachChildren
解除所有子Transform的关联
Find
查找对应子Transform
GetChild
得到对应子Transform
isChildOf
是否为子Transform
SetParent
设置父Transform
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)