我发现unity3d隐藏物体这一部分很重要,那么unity3d怎么隐藏选中物体呢?今天我们就来看看这个过程。

当场景中需要隐藏的物体很多时,我们可以添加一个层来表示需要隐藏的物体。

当加载场景时,遍历隐藏的层内物体添加到List集合中,设置SetActive为False.当需要显示物体时,遍历LIst集合,把需要显示的设置为true。

注意不能在一开始就设置物体为False,否则运行时GameObject.Find会找不到该物体,就无法设置为True。

首先创建集合(引入System.Collections.Generic命名空间)。

  1. List lstTools = new List();//场景中的隐藏工具的集合
  2. void HitdToolsList()//隐藏工具
  3. {
  4. GameObject[] ToolsList = GameObject.FindGameObjectsWithTag("Tools");
  5. foreach (GameObject tool in ToolsList)
  6. {
  7. lstTools.Add(tool);
  8. tool.SetActive(false);
  9. }
  10. }