如何使用EditorGUILayout创建一个可拖动的弹出窗口?

时间:2014-11-28 22:24:08

标签: c# unity3d popupwindow

我目前正在自定义编辑器中的Unity3D,C#中的一个小项目中创建一个NPC脚本。但是,我目前对一项小技术感到难过;如果它存在或不是真正的问题。 现在我正在(计划)通过编辑器本身处理对话框,但是如果我打算按照我现在的方式进行操作,这将成为嵌套式FoldOuts的大量混乱。

所以我得出的结论是,最好有一个按钮打开一个可拖动和可拖放的弹出窗口,玩家可以根据每个NPC管理他/她自己的对话层次结构,如下所示图片:https://www.dropbox.com/s/5z1aiil1h1xrcda/Preview.png?dl=0

它使事物看起来更加整洁,而不是将所有东西都塞进一个组件中。 所以,我的问题是:我怎样才能做到这一点?我对窗户感到更加困惑,因为我无法找到任何关于窗户的信息。整个层次结构视图是我自己会担心的,因为我不想过多地依赖别人的帮助,除非它确实是必要的,就像现在一样。

我查看了文档:http://docs.unity3d.com/ScriptReference/EditorGUILayout.html 但没有变得更聪明。

-Zubaja

2 个答案:

答案 0 :(得分:1)

我完全不了解你要做什么。无论如何,如果您正在寻找如何创建浮动可停靠窗口(例如用于自定义工具或检查器),您应该查看EditorWindow类。

在该窗口中,您可以使用EditorGUILayout方法布置字段。

答案 1 :(得分:0)

我在Unity论坛上发布同样的问题后找到了答案。有人将我链接到节点编辑器(http://forum.unity3d.com/threads/simple-node-editor.189230/),这似乎非常有帮助。