您的位置:首页 > 移动开发 > Unity3D

Unity编辑器工具错误

2017-11-09 11:53 381 查看
在写Unity工具时,如果过于依赖GUILayout或者EditorGUILayout,

过多使用BeginHorizontal和BeginVertical等函数

难免逻辑上有时候会出现他们和对应的结束函数没有成对出现,

类似以下错误 是因为有结束函数没有开始函数

即 写了EndVertical()却没有BeginVertical()

需要你在代码里仔细排查,

NullReferenceException: Object reference not set to an instance of an object

UnityEngine.GUILayoutUtility.LayoutFromContainer (Single w, Single h) (at C:/buildslave/unity/build/Runtime/IMGUI/Managed/GUILayoutUtility.cs:182)

UnityEngine.Experimental.UIElements.UIElementsUtility.EndContainerGUI () (at C:/buildslave/unity/build/Runtime/UIElements/Managed/UIElementsUtility.cs:148)

UnityEngine.Experimental.UIElements.IMGUIContainer.DoOnGUI (UnityEngine.Event evt) (at C:/buildslave/unity/build/Runtime/UIElements/Managed/IMGUIContainer.cs:140)

UnityEngine.Experimental.UIElements.IMGUIContainer.HandleEvent (UnityEngine.Event evt, UnityEngine.Experimental.UIElements.VisualElement finalTarget) (at C:/buildslave/unity/build/Runtime/UIElements/Managed/IMGUIContainer.cs:185)

UnityEngine.Experimental.UIElements.IMGUIContainer.DoRepaint (IStylePainter painter) (at C:/buildslave/unity/build/Runtime/UIElements/Managed/IMGUIContainer.cs:38)

UnityEngine.Experimental.UIElements.Panel.PaintSubTree (UnityEngine.Event e, UnityEngine.Experimental.UIElements.VisualElement root, Matrix4x4 offset, Rect currentGlobalClip) (at C:/buildslave/unity/build/Runtime/UIElements/Managed/Panel.cs:425)

UnityEngine.Experimental.UIElements.Panel.PaintSubTree (UnityEngine.Event e, UnityEngine.Experimental.UIElements.VisualElement root, Matrix4x4 offset, Rect currentGlobalClip) (at C:/buildslave/unity/build/Runtime/UIElements/Managed/Panel.cs:435)

UnityEngine.Experimental.UIElements.Panel.Repaint (UnityEngine.Event e) (at C:/buildslave/unity/build/Runtime/UIElements/Managed/Panel.cs:450)

UnityEngine.Experimental.UIElements.UIElementsUtility.DoDispatch (UnityEngine.Experimental.UIElements.BaseVisualElementPanel panel) (at C:/buildslave/unity/build/Runtime/UIElements/Managed/UIElementsUtility.cs:178)

UnityEngine.Experimental.UIElements.UIElementsUtility.ProcessEvent (Int32 instanceID, IntPtr nativeEventPtr) (at C:/buildslave/unity/build/Runtime/UIElements/Managed/UIElementsUtility.cs:71)

UnityEngine.GUIUtility.ProcessEvent (Int32 instanceID, IntPtr nativeEventPtr) (at C:/buildslave/unity/build/Runtime/IMGUI/Managed/GUIUtility.cs:186)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: