Unity 游戏对象消失 enable,destroy与active的区别

gameObject.SetActive(false):是否在场景中停用该物体,停用后Hierarchy窗口呈灰色,用Find函数也找不到。如果该物体有子物体,要用SetActive Recursirely(false)来控制是否停用。停用后,其添空的(为其他游戏体)组件仍能正常工作。

gameObject.Destroy():表示移除物体或物体上的组件,代表销毁该物体,实际上该物体并没有立即释放,而是在你的下下个场景中释放内存资源,就是你a场景中Destroy之后在c场景中才真正释放该物体的内存资源。

gameObject.render.enabled:是控制一个物体是否在屏幕上渲染或显示,而物体还是实际存在,只是相当于隐身,而物体本身的碰撞体还依然存在。(就Gizmos中的)。

原文地址:https://www.cnblogs.com/luxishi/p/5318371.html