transform,RectTransform,gameObject 知识点总结
继承了monobehavior的类,里面的属性transform到底是什么?
1. MonoBehaviour.transform 是什么?
自动关联:当脚本附加到 GameObject 上时,Unity 会自动为 transform 属性赋值,指向该 GameObject 的 Transform 组件。
便捷访问:这是 Unity 提供的语法糖,相当于在脚本内部自动调用了 GetComponent
只读引用:你不需要手动获取或初始化它,Unity 会在运行时自动处理。
2.transform 和 RectTransform
而RectTransform 继承自transform ,是需要手动获取的。只有UI物体才有这个组件。
在 UI 对象上,transform 和 GetComponent
但只有 RectTransform 能访问 UI 特有属性
锚点系统(Anchors)
轴心点(Pivot)
尺寸控制(SizeDelta)
基于父容器的布局
每个物体都有transform组件,但是对于UI节点,它被继承为了RectTransform。
3.transform 和 gameObject
gameObject 是指代对象本身,包含了所有它上面的组件,内存占用较大
transform  是指代对象上的transform组件,用来做一些位置上的变化
同时他们两个可以互相得到对方
`// 从 transform 获取所属对象
GameObject obj = transform.gameObject;
// 从 gameObject 获取变换组件
Transform trans = gameObject.transform;
`
- 
gameObject 属性
是什么:当前脚本所附加的游戏对象实例
访问方式:this.gameObject 或直接 gameObject
主要功能:
管理游戏对象的生命周期:Destroy(gameObject)
控制激活状态:gameObject.SetActive(false)
访问其他组件:gameObject.GetComponent() 
获取对象信息:gameObject.name, gameObject.tag, gameObject.layer - 
transform 属性
是什么:当前游戏对象的变换组件
访问方式:this.transform 或直接 transform
主要功能:
空间变换:transform.position, transform.rotation, transform.localScale
层级关系:transform.parent, transform.childCount, transform.GetChild(0)
UI 特有功能 (如果是 RectTransform):anchoredPosition, sizeDelta 等 
                    
                
                
            
        
浙公网安备 33010602011771号