transform组件用途
1.维护场景树
2.对3D物体的平移,缩放,旋转
场景树
在Hierarchy视图中显示的:
一个game_scene场景,下面有Main Camera节点,Directional Light节点,game_root节点,game_root节点下又有Cube子节点,Sphere子节点,组成game_scene场景树。
1.每个节点都有一个transform组件
2.每一个继承自MonoBehaviour的组件都有一个数据成员指向这个节点的transform组件。
使用this.transform;获得。//可以通过任何一个组件来获得每一个节点的transfrom组件。
同理,由于每一个继承自MonoBehaviour的组件都有一个数据成员gameObject指向组件实例所挂载的场景的节点对象,transfrom它也是一个组件,所以它也有一个gameObject指向它挂的节点。
使用this.transform.gameObject获得。//Debug.Log(this.transform.gameObject.name);
3.每一个继承自MonoBehaviour的组件都有一个数据成员gameObject指向组件实例所挂载的场景的节点对象,使用this.gameObject获得。
Debug.Log(this.gameObject.name);//节点名字
Debug.Log(this.gameObject.layer);//节点所在层名字
Debug.Log(this.gameObject.tag);//节点的标记或标签值
Debug.Log(this.gameObject.activeSelf); // 自己这个属性是否可见,自己节点名字旁边的勾是否打了,结果是true或false
Debug.Log(this.gameObject.activeInHierarchy); // 自己在这个体系里面是否可见,也就是如果它的父节点设置为不显示,自己还是可见的,那么它的activeInHierarchy就是不可见,结果是true或false
this.gameObject.SetActive(true);//设置节点为可见