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

0 投票
3 回答
2659 浏览

c# - Unity UI - 光标锁定时与世界空间 UI 交互

当设置为时,我正在尝试使用第一人称控制器与世界空间 UI交互。Cursor.lockStateCursorLockMode.Locked

世界空间用户界面和角色 世界空间用户界面和角色

但是当光标被锁定时,光标位置设置为(-1, -1) ,这是从Inspector告知的。

(-1, -1) 的光标位置 (-1, -1) 的光标位置

EventSystem.RaycastAll我使用,Sreen.width/2和执行了图形光线投射PointerEventDataEventSystem.current.RaycastAll收集屏幕中间的所有 UI 对象,但不向它们发送任何事件。

我还尝试ExecuteEvents.Execute<IEventSystemHandler>手动将事件发送到 UI 目标。当我向它发送“提交”事件时,这适用于按钮。显然这不是一个优雅的解决方案。我也不知道如何向滑块发送消息。

这种疯狂的尝试在 Windows 上全屏播放时有效。2333

相关资源

0 投票
0 回答
413 浏览

unity3d - 如何在 Unity 编辑器中为匿名 FirebaseUser 设置自定义用户 ID?

我正在使用 Unity 5.5.2f1 和 Firebase 3.0.0 插件。
如何为登录的匿名用户设置自定义用户 ID?
当应用程序在编辑器Auth.SignInAnonymouslyAsync()中启动并被调用时,用户 ID 总是不同的,它给了我这样的用户 ID:

我在登录之前和之后都尝试过这种方法:

但它不会更改登录用户的用户 ID。没有文档,有人知道怎么做吗?

0 投票
1 回答
1863 浏览

unity3d - 扩展 UnityEngine.UI.Image 并在 Inspector 中添加额外的可用字段

我正在尝试这样UnityEngine.UI.Image扩展

但我Comment在检查器中看不到额外的文本字段。是否可以添加检查员中可用的额外字段?

PS它触发重复使用自定义检查器扩展 Unity UI 组件,但它不是重复的。我什么都不问custom Inspector。它只是带有default Inspector. 问题是该字段根本没有出现在检查器中。

0 投票
1 回答
38 浏览

unity3d - 整个项目显示在导入窗口中

我从 4.2 版开始就一直在使用 Unity3D,最近刚刚升级到不同的 5.X 版本。

导入外部包时,它会显示导入窗口,其中包含所有且仅包含包内容的列表。升级后,它似乎通过显示整个文件结构并为包元素使用白色名称并为其余文件/文件夹使用灰色名称来显示包将如何适应项目。

我目前正在从事一个非常大的项目,这迫使我仔细搜索不必要的庞大元素列表,以查找我需要在导入过程中添加或排除的元素。

谷歌搜索无济于事,有没有人碰巧知道如何从那个窗口隐藏我的项目文件?

提前致谢

0 投票
0 回答
330 浏览

unity3d - 从控制台应用程序 (C#) 解析 Unity 资产包

是否可以使用UnityEngine.dll从非统一项目(例如控制台应用程序)加载/解析统一资产包?

我希望能够从assetbundle中读取Prefabs并从那里获取游戏对象......

我尝试引用UnityEngine.dll并使用 UnitEngine.dll 中的 AssetBundle 助手,如下所述:https ://docs.unity3d.com/Manual/LoadingAssetBundles.html

但它不能在我的控制台应用程序上运行,可能这段代码不能在统一之外运行。当我运行以下代码时

或者

我得到下一个例外:

我可以为此目的使用 UnityEngine dll 吗?还是我应该编写自己的解析器?

0 投票
0 回答
1487 浏览

unity3d - 错误 !错误!无法合并 android 清单。有关更多详细信息,请参阅控制台

如果我在统一 3d 中将最小 api 设为 14,则 apk 变为。但是当我做 9 时,我得到以下错误。我在以太网上尝试了所有方法,但事实并非如此。你能帮助我吗 ?

0 投票
0 回答
544 浏览

unity3d - 使用 Unity3D 将动作映射到基于节点的编辑器

我的问题围绕着如何让基于节点的编辑器描述的行为映射到游戏中的动作。我已经搜索了几个星期关于如何做到这一点,但找不到任何东西。如果有人能指出我正确的方向,我将不胜感激!

我不知道问这个问题的最佳方式 - 我不想用我所做的事情来加重这个问题,所以我会在下面详细说明,尽我所能:

我目前有一个为 Unity 编写的基于节点的自定义编辑器,我用它来以图形方式编辑老板和 NPC 的行为。它看起来像这样(显示右键菜单): 基于节点的行为编辑器

我确实找到了一种让这种行为在游戏中起作用的方法,但感觉很不稳定,我想知道是否有更好的方法。

它的工作方式是每个节点对象有两个要序列化的对象。我目前将这些设置作为可编写脚本的对象,但如果我再次这样做,我会创建自己的序列化。这两个对象是:

  • 编辑器窗口中的节点,包含编辑器脚本
  • 相关的游戏内动作,由 NPC 在运行时加载

这会在文件结构以及我需要的脚本文件数量上造成一些混乱。最重要的是,管理同时执行多个动作的情况有点棘手,我需要更改 NPC 的状态(例如,boss 战的第 1 阶段到第 2 阶段),这听起来像是一个设计问题。

如果有必要,我很乐意分享源代码或更多屏幕截图。我正在寻找的是一种以结构化方式处理此类事情的方法,该方法允许其他项目的可扩展性(例如 RTS 的 NPC 行为)

0 投票
2 回答
2238 浏览

unity3d - 当我在编辑器中按“播放”时,Unity 3d 在 Mac 上崩溃

我在我的 macbook air 上下载了 Unity 3d,并使用单个 3d 对象(飞机)创建了一个新项目。

当我按下“播放”按钮(三角形图标)时,unity 挂起并崩溃。

无论我是否再次创建新项目并添加不同的 3d 对象(球体),都会发生这种情况。

当我按下播放时,我的项目不会崩溃的唯一方法是它是一个完全空白的项目,没有 3d 对象。

有趣的是,我可以构建一个项目的 mac 版本并且它运行良好(我可以看到 3d 对象、平面或球体)。

任何人都可以提供任何建议吗?

编辑:OS / X 版本 10.9

0 投票
0 回答
25 浏览

unity3d - Unity3D - 编辑器中删除的对象仍会阻止光线投射

我在搅拌机中制作了一个建筑模型,并将 .blend 导入到 Unity。该建筑模型中有多个对象,包括窗户、门和地板/天花板。我为每个单独的对象添加了网格碰撞器,并将它们标记为静态以用于烘焙照明。烘烤后,我将门取消选中为静态,以便对撞机可以随动画打开和关闭。

问题是,当我在建筑物外面并且门打开时,如果我尝试通过门洞中的空间向建筑物内射击,则拍摄的光线投射会在门所在的位置停止。对于建筑物的对象,例如墙壁和门本身,它们被标记,因此如果光线投射击中它,它会播放声音并产生火花粒子。在开门时对看似空旷的空间进行拍摄,没有声音或粒子效果。光线似乎只是停在门曾经关闭的地方消失了。奇怪的是,当我在建筑物内通过同一个敞开的门空间拍摄外面时,光线投射实际上确实经过并在外面的物体上播放声音和粒子效果。当我删除门对象时,会发生同样的事情。当我删除建筑物本身时,

这是它的样子 - 从外面 拍摄

内线射门 - 内线

我将 Unity 5.6.1f1 和 C# 用于脚本。任何帮助将不胜感激。先谢谢了。

0 投票
2 回答
1920 浏览

unity3d - GetAssetPreview 始终为 UnityEngine.UI.Image 返回 null

我有一组预制件,我想在我的自定义编辑器中显示预览。这适用于具有网格渲染器的游戏对象,例如基本四边形。但是,当我尝试AssetPreview.GetAssetPreview(tilePrefab.gameObject);在带有 UnityEngine.UI.Image 和画布渲染器的游戏对象上使用时,它总是返回 null。

下面是绘制预览的代码部分。

我知道 GetAssetPreview 异步加载资产,这是通过重绘解决的。我也试过

但这永远不会结束。

我也尝试使用图像的纹理

但这不起作用,因为精灵在地图集中并且所有地图集都显示出来了。