代码之家  ›  专栏  ›  技术社区  ›  Muhammad Faizan Khan

网格渲染器和渲染器组件之间的区别

  •  0
  • Muhammad Faizan Khan  · 技术社区  · 6 年前

    我有这个密码

    GetComponent<MeshRenderer>().bounds
    

    还有这个

    GetComponent<Renderer>().bounds
    

    试图 search

    1 回复  |  直到 6 年前
        1
  •  9
  •   PerformanceFreak    6 年前

    网格渲染器和渲染器组件之间的区别

    MeshRenderer 用于显示三维对象/模型。还有 SpriteRenderer Renderer 组件只是一个基类 网格渲染器 源于。这个 bounds 变量在渲染器中声明,因此从 网格渲染器 渲染器 将给您相同的值。因为 也源于 渲染器 ,您可以从中访问其他变量 班级。

    所以 GetComponent<MeshRenderer>().bounds GetComponent<Renderer>().bounds 网格渲染器 并访问 界限 渲染器 父类。第二个将获得 渲染器 并访问 变量直接从它开始。

    渲染器

    例如,您可以执行以下操作:

    GetComponent<Renderer>()
    

    但你不能这样做:

    gameObject.AddComponent<Renderer>()
    

    并将获得以下异常:

    无法添加“Renderer”类型的组件,因为它是抽象的。添加 而不是从“渲染器”派生的类型的组件。

    渲染器 是可以附加到游戏对象上的内容。例如 喷洒器 .