【发布时间】:2015-12-01 15:28:07
【问题描述】:
我在堆栈溢出中看到这个主题,但我认为这是错误的 使对象“透明”以使其无法被看到并不是最有效的做事方式。您更愿意做的是让渲染器在您不想看到时处于非活动状态,而在您看到时处于活动状态。
如果您在编辑器中单击gameObject,则应该有一个网格渲染器作为组件之一。
要从附加到同一 gameObject 的脚本中将其设置为非活动状态,您可以这样做...
gameObject.GetComponent<Renderer> ().enabled = false;
如果你真的想使用透明度,你可以这样做......
gameObject.GetComponent<Renderer> ().material.color.a = 0;
虽然如果您要设置透明度,您需要确保材质使用的着色器支持透明度。我建议使用 Legacy Shaders/Transparent Diffuse 着色器。
如何使用:
gameObject.GetComponent<Renderer> ().material.color.a = 0;
【问题讨论】:
标签: c# unity3d transparency opacity