如何使游戏对象不可见?

How to make a gameObject invisible?

我试图通过代码使 Unity 游戏对象不可见。到目前为止,我已经尝试过(在附加到游戏对象的脚本上,我想让它不可见):this.renderer.enabled = false this.enabled = false this.gameObject.enabled = false this.gameObject.renderer.enabled = false 在我的播放器脚本上:other.gameObject.enabled = false other.gameObject.renderer.enabled = false 我也试过 Destroy (other.gameObject) 但它没有达到我想要的效果。

感谢您的帮助

编辑: 这是我使用 gameObject.SetActive 命令

的代码
    void Update () 
{
    if (BlueFlag.GotBlueFlag == false) 
    {
        print ("false");
        gameObject.SetActive(false);
    }
    if (BlueFlag.GotBlueFlag == true) 
    {
        gameObject.SetActive(true);
        print ("True");
    }
}

现在部分有效。但是,如果 BlueFlag 脚本上的 GotBlueFlag bool 为真,它似乎不会注册。如果我使用双“=”符号,它会向我的 "True" 打印语句发送垃圾邮件。想法?

另一个编辑:(显示 BlueFlag 脚本)

    void OnTriggerEnter (Collider other)
{
    if (other.collider.tag == "RedTank") 
    {
        print ("Flag");
        gameObject.SetActive (false);
        GotBlueFlag = true;
    } 

使用以下代码:

gameObject.SetActive(false);

文档here。请注意,启用在新的 Unity 中已过时 API!