Test_03
TransformTest
控制物体位置和物体间的父子关系
public class TransformTest : MonoBehaviour
{void Start(){// 【获取位置】//      世界坐标中物体的位置Debug.Log(transform.position);//      物体相对于父物体的位置Debug.Log(transform.localPosition);// 【获取旋转】//      世界坐标中物体的旋转(四元数)Debug.Log(transform.rotation);//      物体相对于父物体的旋转(四元数)Debug.Log(transform.localRotation);//      世界坐标中物体的旋转(欧拉角)Debug.Log(transform.eulerAngles);//      物体相对于父物体的旋转(欧拉角)Debug.Log(transform.localEulerAngles);//【获取缩放】//      只有相对于父物体的缩放Debug.Log(transform.localScale);// 【获取方向向量】//      前方(Z轴,蓝色)Debug.Log(transform.forward);//      右方(X轴,红色)Debug.Log(transform.right);//      上方(Y轴,绿色)Debug.Log(transform.up);// 父子关系//      获取父物体GameObject go = transform.parent.gameObject;//      获取子物体个数Debug.Log(transform.childCount);//      解除所有子物体与该物体之间的父子关系transform.DetachChildren();// 获取子物体//      使用子物体名称Transform trans = transform.Find("Child");//      使用子物体索引trans = transform.GetChild(0);// 判断一个物体(“Child” -- trans)是不是另一个物体("Sphere" -- transform)的子物体bool res = trans.IsChildOf(transform);Debug.Log(res);// 【建立父子关系】//      将一个物体(transform)设置成另一个物体(trans)的父物体trans.SetParent(transform);}void Update(){// 令物体时时刻刻都看向(0,0,0)点transform.LookAt(Vector3.zero);// 【旋转】 物体绕x轴旋转,每帧旋转1度(自转)transform.Rotate(Vector3.right, 1);// 【旋转】 物体以y轴,绕 Vector3.zero 旋转,每帧转动5度(公转)transform.RotateAround(Vector3.zero, Vector3.up, 1);// 【移动】 以 Vector3.forward 方向,每帧移动0.1ftransform.Translate(Vector3.forward * 0.1f);}
}