问题标签 [unity-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.

0 投票
0 回答
456 浏览

c# - 统一的 Winform 未按应有的方式显示

我在显示我在统一编辑器中创建的 Winform 时遇到问题,由于某种原因,该表单没有像在统一编辑器中那样显示...

  • 表单中的大多数控件都将“autosize”属性设置为 true,并将“autoSizeMode”属性设置为“GrowAndShrink”。并且每当我在统一编辑器中显示表单时,这些控件就会消失......它们的大小设置为(0,0),而不管它们持有的内部控件如何。(手动设置这些控件的“minimumSize”属性确实使它们再次可见。)

  • “sutoScroll”属性不显示滑块。

  • “码头”属性没有按应有的方式行事。

我修过的一些专业:

  1. 我已将正确的dll(例如“system.windows.forms.dll”)添加到统一项目中。

    我已经将每个表单的“.cs”和“.designer.cs”合并到一个文件中,所以我不会遇到“表单和设计器文件未在解决方案资源管理器中链接”这个问题,我将它们复制到团结项目。

  2. 我试过制作一个“类库”项目并将表格复制到其中。将构建/调试 dll 放在统一项目中并显示表单。(但仍然是相同的结果)

  3. 我已将 winform 项目的“.exe”复制到统一,调用/显示 exe 确实正确显示了表单,但我希望能够在 exe 和统一编辑器之间共享集合引用......以及从什么我在网上看过,觉得不太行。。

关于如何解决问题的任何建议?或者没有如何在统一编辑器中显示 Winform 而不会弄乱,并在两者之间共享参数引用?

这是在 Visual Studio 中运行的 Winform 的图像:

图像1

这是通过统一显示的形式的图像:

img2

这是 Winform 项目的链接

0 投票
1 回答
345 浏览

c# - 在所有场景中查找脚本引用

在统一中,我可以通过右键单击脚本并选择在场景中查找引用来在打开的场景中找到特定脚本的引用,如下所示:

在此处输入图像描述

但我正在寻找一种在项目的所有场景中搜索特定脚本引用的方法。我搜索但找不到任何东西。这可能吗?也许使用和编辑器脚本?

0 投票
0 回答
46 浏览

unity3d - 如何根据选定的游戏对象在场景视图或检查器视图中创建捕捉设置按钮

我正在使用 9 种不同的捕捉设置在我的场景视图中移动 3 个不同的对象(每个对象 3 个)。手动调整这些设置真的很痛苦。当我选择游戏对象时,如何在场景视图(或检查器)中创建动态捕捉设置按钮?因此,在任何给定时间,只有我需要为游戏对象设置的 3 个快照设置可通过按钮获得。

0 投票
1 回答
3903 浏览

unity3d - 编辑器窗口截图

我想从自定义 EditorWindow 中截取屏幕截图,我将其用作我正在开发的游戏的 LevelEditor,但我不知道该怎么做。

我想要的是捕获 EditorWindow,而不是游戏视图或场景视图。

你能帮助我吗?谢谢!

编辑:当按下 GUILayout.Button 时,我想通过代码截取屏幕截图:)

0 投票
2 回答
636 浏览

c# - MeshFilter.sharedMesh 更改在停止游戏后仍然存在

我正在使用以下代码来翻转立方体背面的 UV:

它会按预期翻转 uv,但如果我注释掉所有内容并在统一编辑器中点击播放,我会看到 uv 仍然翻转(好像代码对 uv 产生了永久性更改)。

如果我关闭并重新打开 Unity 编辑器,然后点击播放,uv 将再次处于初始(非翻转)状态。

在这种情况下这不是真正的问题,但它在调试过程中给我带来了很多麻烦,有人可以解释这种行为吗?

0 投票
1 回答
3294 浏览

c# - 如何在统一编辑器中显示以下 KeyValuePair(使其可编辑)

简而言之:我有一个 KeyValuePair,我想在 Inspector 中显示并使其可编辑。

我有以下自定义键值对的实现类。

仅供参考,这是我制作的自定义 KeyValuePair 类

现在问题的核心是我无法在检查器中编辑这些值。对于设计师来说,这是绝对必须的。我很想创建一个编辑器脚本来添加这个功能,但是当涉及到这些时我有点迷失了。有人愿意帮助我吗?

仅供参考,这是它们现在在检查器中的显示方式

在此处输入图像描述

任何帮助深表感谢!

0 投票
1 回答
11213 浏览

c# - Unity - 如何创建自定义编辑器以动态更改具有自定义大小的其他列表中的列表大小?

我想为 Unity 创建一个自定义编辑器,其中包含列表中的列表,并允许动态编辑大小并在第二个列表中使用弹出窗口。

这是我想要的几个例子:

示例 1

示例 2

问题是我不能改变第二个列表的大小,因为它改变了第二个列表中所有元素的大小,所以我不能为列表的每个元素设置不同的大小。

我对弹出窗口也有同样的问题,选择的项目对于所有弹出窗口都是相同的(如您在第二张图片中所见)。

如何保存所选每个项目的每个维度或弹出窗口而不更改其他项目?

这是我的代码:

ScriptableObject 类

自定义编辑器(数据库只有弹出列表名称)

0 投票
1 回答
406 浏览

c# - 在运行时获取 Unity Editor-Only 变量(初始屏幕背景的颜色)

为了从 Unity 的启动画面创建动态淡入效果,我试图在运行时获取启动画面背景的颜色。

在编辑器中,可以在Edit > Project Settings > Player > Splash Image > Background找到颜色。

在研究如何获得这种颜色时,我偶然发现了 PlayerSettings.SplashScreen.backgroundColor. 但是,PlayerSettings该类包含在UnityEditor命名空间中,在运行时无法访问。

我如何在运行时动态获取初始屏幕背景的颜色?


编辑:使用 IL 反编译器,我发现 UnityEditor 程序集通过外部方法解决了这个问题。但是,我仍然看不到从编辑器程序集中获取背景颜色的方法。

0 投票
1 回答
366 浏览

c# - 将统一编辑器脚本编译为 dll 后的 TypeLoadException

我已将我们的编辑器脚本编译成一个 .dll 文件,并将其放在/Assets/Editor目录中:

在此处输入图像描述

这些扩展脚本菜单正确显示在编辑器中:

在此处输入图像描述

但是当我单击菜单时它有这个 TypeLoadException 。“Util”类型实际上在“UnityVS.x3dgame.CSharp.csproj”项目中,这也是一个库项目。

在此处输入图像描述

我不知道如何解决这个问题。

以下是更多信息: 解决方案结构:

在此处输入图像描述

编辑器库参考:

在此处输入图像描述

把招工广告。

0 投票
2 回答
1970 浏览

c# - 根据另一个枚举选择更新 ScriptableObject 的枚举?

基本上,我正在创建一个ScriptableObject Skill并且我想将其限制为仅某些字符类型。但是,我无法完全弄清楚如何去做。除非不可避免,否则我想避免为所有类设置一个枚举。我将尝试在下面向您展示我的意思。

如果在编辑器中我选择Warrior我希望出现另一个枚举并询问我是否要将其限制为某个子类型。像这样的东西:

但是,如果我选择 Rogue 类型,我不希望出现 Warrior Enum。有没有办法在我的 ScriptableObject 类的编辑器中执行此操作?