unity3d中让物体显示和隐藏

unity3d中让物体显示和隐藏的方法


  1. gameObject.renderer.enabled   
  2. //是控制一个物体是否在屏幕上渲染或显示  而物体实际还是存在的 仅仅是想当于隐身 而物体本身的碰撞体还依旧存在的  
  3.   
  4. GameObject.Destroy()    
  5. //表示移除物体或物体上的组件 代表销毁该物体  实际上该物体的内存并没有马上释放 而是在你下下个场景中槽释放内存资源,就是你a场景中Destroy了 通常是在c场景中才真正释放该物体的内存资源(这是我的体会 不知道理解错误没)  
  6.   
  7. gameObject.active     
  8. //是否在场景中停用该物体   在你gameObject.active =false中 则你在场景中用find找不到该物体    
  9. //假设该物体有子物体 你要用SetActiveRecursively(false) 来控制是否在场景中停用该物体(递归的)


记录下



using UnityEngine;
using System.Collections;

public class test : MonoBehaviour 
{
    GameObject m_obj;
	// Use this for initialization
	void Start () 
    {
        m_obj = GameObject.Find("box");
	}
	
	// Update is called once per frame
	void Update ()
    {
	
	}

    void OnGUI()
    {

        if (Input.GetKeyDown(KeyCode.W))
        {
           // m_obj.enabled = true;
            m_obj.SetActive(true);
        }

        if (Input.GetKeyDown(KeyCode.A))
        {
            m_obj.SetActive(false);
           // m_obj.enabled = false;
        }
    
    }
}


你可能感兴趣的:(unity3d中让物体显示和隐藏)