gpt4 book ai didi

c# - 统一: Null Reference when Applying Prefab

转载 作者:太空宇宙 更新时间:2023-11-03 12:14:59 25 4
gpt4 key购买 nike

我已经使用 Unity 好几年了……我从来没有遇到过这个问题。

每当我尝试应用或还原预制件时,都会出现以下错误:

NullReferenceException:对象引用未设置到对象的实例UnityEditor.PrefabUtility.RegisterNewObjects (System.Collections.Generic.List1 newHierarchy, System.Collections.Generic.List1 hierarchy, System.String actionName) (at C:/buildslave/unity/build/Editor/Mono/ImportSettings/PrefabUtility.cs:121)

(下面的完整堆栈跟踪)

知道是什么原因吗?这些更改似乎确实适用,我在树中移动了一些东西,修改了值,它们确实适用。但是这个错误有点令人担忧,我宁愿没有错误。有什么想法/建议吗?

完整堆栈跟踪

NullReferenceException: Object reference not set to an instance of an object
UnityEditor.PrefabUtility.RegisterNewObjects (System.Collections.Generic.List`1 newHierarchy, System.Collections.Generic.List`1 hierarchy, System.String actionName) (at C:/buildslave/unity/build/Editor/Mono/ImportSettings/PrefabUtility.cs:121)
UnityEditor.PrefabUtility.ReplacePrefabWithUndo (UnityEngine.GameObject target) (at C:/buildslave/unity/build/Editor/Mono/ImportSettings/PrefabUtility.cs:223)
UnityEditor.GameObjectInspector.DoPrefabButtons (PrefabType prefabType, UnityEngine.GameObject go) (at C:/buildslave/unity/build/Editor/Mono/Inspector/GameObjectInspector.cs:347)
UnityEditor.GameObjectInspector.DrawInspector () (at C:/buildslave/unity/build/Editor/Mono/Inspector/GameObjectInspector.cs:260)
UnityEditor.GameObjectInspector.OnHeaderGUI () (at C:/buildslave/unity/build/Editor/Mono/Inspector/GameObjectInspector.cs:170)
UnityEditor.Editor.DrawHeader () (at C:/buildslave/unity/build/Editor/Mono/Inspector/Editor.cs:420)
UnityEditor.InspectorWindow.DrawEditor (UnityEditor.Editor[] editors, Int32 editorIndex, Boolean rebuildOptimizedGUIBlock, System.Boolean& showImportedObjectBarNext, UnityEngine.Rect& importedObjectBarRect) (at C:/buildslave/unity/build/Editor/Mono/Inspector/InspectorWindow.cs:1125)
UnityEditor.InspectorWindow.DrawEditors (UnityEditor.Editor[] editors) (at C:/buildslave/unity/build/Editor/Mono/Inspector/InspectorWindow.cs:1030)
UnityEditor.InspectorWindow.OnGUI () (at C:/buildslave/unity/build/Editor/Mono/Inspector/InspectorWindow.cs:361)
System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)
Rethrow as TargetInvocationException: Exception has been thrown by the target of an invocation.
System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:232)
System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MethodBase.cs:115)
UnityEditor.HostView.Invoke (System.String methodName, System.Object obj) (at C:/buildslave/unity/build/Editor/Mono/HostView.cs:295)
UnityEditor.HostView.Invoke (System.String methodName) (at C:/buildslave/unity/build/Editor/Mono/HostView.cs:288)
UnityEditor.HostView.InvokeOnGUI (Rect onGUIPosition) (at C:/buildslave/unity/build/Editor/Mono/HostView.cs:255)

编辑:我被要求解释它与标记的重复问题有何不同。这不是简单地问“什么是空引用”。我完全了解空引用(正如我所说我已经使用 Unity 多年)。这个问题是关于空引用的特定情况,其中应用 Unity 预制件导致编辑器中出现空引用,引用 UnityEditor 脚本(我没有编写)。

最佳答案

我遇到了同样的问题,是的,我就像“我知道什么是 NullReferenceException”,但为什么它会发生在这里?好吧,我可以告诉你原因,但不会告诉你如何解决,但我有一个变通办法。

为什么:Unity 有一个用于预制件的编辑器工具,所以你有那个应用按钮,它会更新预制件,问题是 Unity 正在运行的脚本没有找到路径/id 来让你更新基础预制件它,是的,我尝试删除并再次创建,我尝试重新打开项目等,但 Unity 仍然找不到预制件 ID。快速观察一下,我删除了原来的预制件,然后创建了一个新的预制件,我删除了游戏中的所有实例,只留下全新的预制件,当我创建这个预制件的新实例时......错误仍然存​​在,我可以'更新,所以它是 Unity 内部的东西,我们对此无能为力。

解决方法:好消息是我们有一个解决方法,将实例从层次结构拖到项目中,将鼠标悬停在预制件的顶部,直到它周围出现蓝色方 block ,然后释放您的对象并确认您想要更换您的预制件将被更新。

最后,Unity 正在更新预制系统,每个人都在 Unite 2018 上庆祝,就像我们的团队刚刚赢得世界杯决赛一样。我相信很快这个问题将只是一个笑话,祈祷吧。

关于c# - 统一: Null Reference when Applying Prefab,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50189499/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com