Inspector 左上角的复选框在 Unity 中有啥作用?

Posted

技术标签:

【中文标题】Inspector 左上角的复选框在 Unity 中有啥作用?【英文标题】:What does the checkbox top left in Inspector do in Unity?Inspector 左上角的复选框在 Unity 中有什么作用? 【发布时间】:2014-12-01 10:31:47 【问题描述】:

检查器左上角的 Unity (4.6) 中有一个复选框。我可以取消选中它以“隐藏”Image:s、Button:s 等等。它的真正作用是什么?我可以从脚本中取消隐藏所述对象吗?我确实尝试打开和关闭 .enabled 但没有任何反应;如果未选中该复选框,我将无法从脚本中再次显示该元素。不幸的是,在设计2D游戏领域时,您通常希望先将所有图形放在画布上以使其合适,然后将其隐藏,以便有一种默认的、空白的画布设计状态。否则,所有可能的标签和仅偶尔显示的内容都会使 Unity 编辑器中的设计画布变得混乱。

我没有找到任何相关和/或最新的文档。

【问题讨论】:

【参考方案1】:

它允许您停用和激活游戏对象。非活动的游戏对象将不会被绘制,它们的Update() 将不会被调用,并且您将无法使用Find() 找到它们,因此,您必须保存对稍后要在脚本中打开的任何对象的引用.

开启/关闭:http://docs.unity3d.com/ScriptReference/GameObject.SetActive.html

检查是否明确打开/关闭:http://docs.unity3d.com/ScriptReference/GameObject-activeSelf.html

检查是否打开/关闭,因为父级已打开/关闭:http://docs.unity3d.com/ScriptReference/GameObject-activeInHierarchy.html

【讨论】:

好吧,我错了。我不小心在保存的图像参考上尝试了 SetActive。当然它没有用......在游戏对象上做它。仍在努力将 GameObjects 从组件中分离出来。顺便说一句 Image 有一个 IsActive() 如果相关的游戏对象和组件都为真,则根据文档为真。【参考方案2】:

该复选框与 &lt;...thing...&gt;.SetActive(false); 相同(其中 <...thing...> 是相关组件或游戏对象)。

http://docs.unity3d.com/ScriptReference/GameObject.SetActive.html

一旦组件设置为“非活动”(通过脚本或通过该复选框),您将无法访问它,除非您存储了对它的引用,即 GetComponent&lt;T&gt;()Find() 并且其他“搜索”功能不能看看吧。

如果您有一个带有 var 的“控制器”脚本,用于各种文本/图像/您想通过脚本激活的任何内容,并将对象拖放到检查器中,您将获得参考。或者,您可以使用脚本获取 start() 函数中的引用,然后将它们设置为 active=false。

这个统一的答案很好地涵盖了启用与活动:http://answers.unity3d.com/questions/25945/what-is-the-difference-between-these-three-ways-of.html

【讨论】:

以上是关于Inspector 左上角的复选框在 Unity 中有啥作用?的主要内容,如果未能解决你的问题,请参考以下文章

Unity对于VR的支持

Unity 编辑器操作

Unity2.7 检视器(Inspector)

unity3d小小白之山的制作

Unity 定制PlayableAsset在Inspector显示

Unity Inspector 面板的某些特性