问题标签 [unity3d-editor]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 如何更改 Inspector 中的公共变量?
我有一个游戏对象。在游戏对象的“检查器”中有一些脚本。现在我想更改附加到脚本的公共变量。我怎样才能做到这一点?
xml - 通过编辑器 GUI 编写 XML
我有一个包含以下节点的 XML 文件:
现在我想从“产品”复制一份并通过 EditorGUI 填充所有内部文本。因为我会在这个 XML 中得到很多产品,我不想通过 XML 文件填充所有这些文本。
我有点迷路了,现在不知道从哪里开始。我使用 Unity4.6 和 C#。
希望有人能告诉我如何做到这一点。
谢谢
unity3d - 如何从自定义编辑器窗口检测 Unity3D'SceneView 中的对象单击
为了加快场景设置,我开发了一堆自定义编辑器。我想在其中一个编辑器上添加一个新功能,该功能将检测何时在 SceneView 中单击了对象(从而防止选择更改,因为此编辑器的目的是在它们之间链接对象)。
我设法通过防止从 SceneView 上的鼠标位置进行默认选择和光线投射来实现这一点。我唯一的问题是,当对象没有任何对撞机时,它将不起作用(并且在这些对象上添加对撞机是不可能的)。然而,编辑器能够在没有碰撞器的情况下检测对对象的点击。
我带来的所有 google-fu 都是“添加对撞机”方法(不可能)或“自己进行光线投射”(对我来说有点矫枉过正)。
请注意,我不是在寻找解决方法,我已经找到了一堆(所有场景对象上的 Bounds.IntersectRay、恢复选择 OnSelectionChange、使用 Selection.gameObjects 等)。出于好奇,我真的在寻找理想的解决方案(即使没有记录),以便从自定义编辑器的角度更好地了解什么是可能的或不可能的。
unity3d-editor - Unity3D ReorderableList 字段显示在框下方
我正在尝试创建一个可重新排序的列表,但我在使用 EditorGUILayout 时遇到了问题。如果我使用 EditorGUI 它可以正常工作,但是这些字段的大小是静态的(除非我每次都手动计算大小)。
这是我正在做的事情:
当我使用 EditorGUILayout 时,控件显示在 Reorderable 列表下方。我仍然可以交换命令,但内容总是显示在列表下方。
android-studio - 如何与 Android Studio 一起使用 Unity 3D
我刚刚开始使用 Unity 3D,我正在学习 android 游戏开发,我想知道如何设置 Unity 以使用 android studio?
c# - Unity 5:在编辑器中从 C# 脚本访问/修改 AnimatorController
我想编写一个编辑器菜单项来访问当前打开的动画控制器并销毁/创建/修改动画转换。
基本上,我需要遍历当前打开的动画控制器中的所有动画状态/剪辑,并根据它们的名称创建具有特定的过渡并调整所有剪辑的播放速度。
我有这个代码片段:
但是,它不能在 Unity5 上编译(很可能是为 Unity 4 编写的),而且我不确定如何使用 Unity 5 函数获取当前打开的 AnimatorController。
动画控制器类似乎被定义为UnityEditor.Animations.AnimatorController
,但我不知道如何获取当前打开的。
有什么建议吗?
c# - Unity 5:管理动态创建的游戏对象的简洁方式
在 Unity 5 中,管理动态创建的游戏对象的“干净”方式是什么?
我编写了一个组件 ( MonoBehavior
),它创建/销毁了几个GameObjects
. 这些对象作为自定义自定义系统的一部分加载,该系统选择角色的部分 - 头发/衣服等。这意味着它们对玩家可见,在编辑器中可见,但不应该在编辑器中可编辑。正在加载的对象是带有骨架的网格。
该脚本以这种方式运行:
- 从资源中加载游戏对象(确切的对象在脚本中确定,它们不是预制件)
- 将它们附加到场景的某些部分(不一定附加到它自己的节点)
- 销毁时删除。
删除:
创建:
销毁处理程序:
这在编辑器中似乎工作正常,但是当我从游戏模式切换回编辑模式时,我收到很多警告:
我在场景层次结构的顶层获得了一堆新的对象树(那些应该被删除的树——树源自与原始“资源”一起加载并附加的对象)。
那么,我如何干净地处理动态创建的游戏对象呢?
我需要知道我需要设置哪些标志,以及我应该执行哪些步骤来确保对象不会“泄漏”到场景中并且在我删除创建它的组件时被正确销毁。
建议?
“ResourceLoader”使用的完整基类
unity3d - 在 Unity 编辑器中设置属性
尽管很有意义,但我在使用脚本时尝试使用接口,如下所示:
但是,当使用这种方法时,任何实现接口的类都不会在检查器中显示这些属性,我最终会得到如下结果:
这对我来说真的没有意义,我希望有更好的解决方案。
旁注,我不是专门为接口使用 getter / setter,还用于一些验证等。
谢谢!
blender - 为什么不搅拌机。在 Unity 5.0 中文件转换为 FBX 文件
从 Blender 统一模型后,它说:
Blender 无法将 .blend 文件转换为 FBX 文件。您需要使用 Blender 2.45-2.49 或 2.58 及更高版本才能直接导入 Blender。
请注意,我有 Blender 2.71 UnityEditorInternal.InternalEditorUtility:ProjectWindowDrag(HierarchyProperty, Boolean) UnityEditor.DockArea:OnGUI()
unity3d - 通过脚本设置层次过滤器
在 Unity Editor 的 Hierarchy 窗口顶部有一个用于过滤层次结构的字段:
我的问题是您是否可以从编辑器脚本中设置该过滤器以及如何设置。我在网上几乎找不到任何内容。
提前致谢。