C# 如果UNITY中没有渲染器,如何使我的3D游戏对象不可见?

C# 如果UNITY中没有渲染器,如何使我的3D游戏对象不可见?,c#,unity3d,vuforia,renderer,C#,Unity3d,Vuforia,Renderer,我有3D对象,我想通过关闭其渲染使其不可见。但当我在运行时运行代码时,它显示:: “回调中的异常:System.Reflection.TargetInvocationException:调用的目标已引发异常。-->UnityEngine.MissingComponentException:没有附加到“3dObject”游戏对象的“渲染器”,但脚本正在尝试访问它。” 我想知道是否没有渲染器,然后如何在场景/游戏视图中看到该对象。在inspector中也没有任何内容(网格渲染器/渲染器/网格过滤器)

我有3D对象,我想通过关闭其渲染使其不可见。但当我在运行时运行代码时,它显示::
“回调中的异常:System.Reflection.TargetInvocationException:调用的目标已引发异常。-->UnityEngine.MissingComponentException:没有附加到“3dObject”游戏对象的“渲染器”,但脚本正在尝试访问它。
我想知道是否没有渲染器,然后如何在场景/游戏视图中看到该对象。在inspector中也没有任何内容(网格渲染器/渲染器/网格过滤器)。
我正在使用c#
this.GetComponent().enabled=true
我使用的是vuforia,希望在调用“跟踪丢失”函数后,在屏幕上保留上次跟踪的对象
是否有其他方法可以做到这一点。。。?
我是unity的新手,我知道这是一个非常基本的问题,但我什么都没有得到。我需要帮助。。 一种方法可以是:

  • 创建一个名为:InvisibleGO的新层
  • 将游戏对象的图层设置为不可见
  • 然后可以设置消隐遮罩 使每个摄影机上的摄影机仅显示您选择的图层 想要:

  • 我正在使用vuforia制作增强现实应用程序,所以我有一个预制的AR摄像头。我不确定这件事是否能在不影响项目的情况下工作。但这种方法对其他项目很好。。我将从中吸取教训。。谢谢我在附件中没有看到网格渲染器组件。”this.GetComponent().enabled=true;'将仅在此游戏对象上获取渲染器组件,而不是在子游戏对象上。我认为您的渲染器位于网格(网格过滤器)上,此处也不存在。任何渲染器都不存在,但它仍存在于场景/游戏视图中。。怎么可能……我不明白。我刚从资产存储导入了一个.fbx文件。但在inspector中没有渲染器。怎么做?@Nitesh,因为该游戏对象的一个(或多个)子对象附加了网格渲染器。对不起。在此模型中,有一个很长的子列表,其中一个具有蒙皮网格渲染器。现在我的疑虑已经清楚了。但是有一件事,如何访问特定3D模型的子级上的所有渲染器
    I,m使用::
    Renderer[]ren=this.GetComponentsInChildren()