转自:http://www.manew.com/3276.html

Unity3D游戏对象消失三种方法的区别:

gameObject.active:是否在场景中停用该物体,在你gameObject.active =false中,则你在场景中用find找不到该物体。如果该物体有子物体,你要用SetActiveRecursively(false) 来控制是否在场景中停用该物体。

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

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

04-23 14:29