Unity 常用方法整理
//获取子物体方法
GameObject Child = transform.Find("Child").gameObject;//查找当前对象的子物体 “Child”
GameObject Child1 = transform.GetChild(0).gameObject;//获取当前物体下第一个子物体
GameObject Child2 = GameObject.FindWithTag("Child2"); //通过标签查找物体
Transform tra = GameObject.FindObjectOfType<Transform>();//返回找到的第一个transform组件的对象
Transform[] traGroup = GameObject.FindObjectsOfType<Transform>();//返回所以带有Transform 组件的对象
int Childs = transform.childCount; //获取子物体的个数
//获取父物体
GameObject Parent = transform.parent.gameObject; //获取当前对象的父对象
// 获取子物体的组件
Transform Childtransform = Child.GetComponentInChildren<Transform>();
//获取父物体的组件
Transform ParentTransform = Child1.GetComponentInParent<Transform>();
Vector 类中常用对应的值
Vector3.zero=Vector3(0,0,0); Vector3.one=Vector3(1,1,1);
Vector3.up = Vector3(0, 1, 0); Vector3.down = Vector3(0, -1, 0);
Vector3.left = Vector3(-1, 0, 0); Vector3.right = Vector3(1, 0, 0);
Vector3.forward = Vector3(0, 0, 1); Vector3.back = Vector3(0, 0, 1);
Vector3 类中属性与方法作用
vector3.magnitude 向量长度
vector3.normalized 向量归一化后的结果
vector3.sqrMagnitude 向量的平方长度
Vector3 方法
Vector3.Lerp() 两个向量之间的线性差值
Vector3.Slerp() 在两个向量之间进行球型差值
Vector3.OrthoNormalize() ; 使向量规范化并且彼此相互垂直
Vector3.MoveTowards(); 从当前位置移向目标位置
Vector3.RotateTowards(); 从当前向量转向目标
Vector3.SmoothDamp(); 随着时间的推移,逐渐改变一个向量朝向预期的目标
Vector3.Scale(); 两个矢量组件对应相乘
Vector3.Cross(); 两个向量的交叉乘积
Vector3.Reflect(); 沿着法线反射向量
Vector3.Dot(); 两个向量的点积乘
Vector3.Project(); 投影一个向量到另一个向量
Vector3.Angle(); 返回两个向量的夹角
Vector3.Distance(); 返回两个向量之间的距离
Vector3.ClampMagnitude(); 返回向量的长度,最大不超过maxLength所指示的长度
Vector3.Max(); 返回两个向量长度较大的向量
Vector3.Min(); 返回两个向量长度较小的向量
向量与向量之间也可以进行加减乘除运算