【问题标题】:Unity3D: Access a static objects GameObjectUnity3D:访问静态对象 GameObject
【发布时间】:2019-09-10 10:32:40
【问题描述】:

我正在尝试制作一款塔防游戏。它是 3D,但主要是从上方(2D)观看。 但是如果我右键单击鼠标,相机可以使用 WASD 键进行缩放和漫游。这行得通。

但是,在比赛场地旁边,我有一个侧边栏,我可以在其中选择要建造的塔楼等等。 但是在缩放/漫游时侧边栏变得无用,所以我想隐藏它。

我正在尝试从相机脚本中执行此操作,因此我在侧边栏中添加了一个脚本组件以使其成为静态(可从 anderswo 访问):

using UnityEngine;
public class SideBar : MonoBehaviour
{
    public static SideBar Instance;
    void OnEnable() { Instance = this; }
}

在相机控制器脚本中,我尝试以下隐藏侧边栏(以及里面的所有内容):

SideBar.Instance.GameObject.SetActive(false);

但这不会编译:CS1061:“SideBar”不包含“GameObject”的定义

【问题讨论】:

    标签: unity3d singleton gameobject


    【解决方案1】:

    GameObject是类名,实际实例是用小写的gameObject引用的,所以改一下:

    SideBar.Instance.GameObject.SetActive(false);
    

    SideBar.Instance.gameObject.SetActive(false);
    

    你应该没事的

    【讨论】:

      猜你喜欢
      • 2015-04-29
      • 1970-01-01
      • 2018-11-10
      • 1970-01-01
      • 2011-09-07
      • 1970-01-01
      • 2012-03-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多