Search Issue Tracker
Fixed in 10.2.0
Votes
0
Found in [Package]
10.1.0, 8.2.0
Issue ID
1287257
Regression
No
[HDRP] Exception thrown when Undo and Redo operation is performed with the duplicate environment under "Environment Library
When Undo and Redo operation is performed with the duplicated empty environment under "Environment Library" causes the editor to throw NullReferenceException and ArgumentException in the Console, Refer attached video
Steps to repro:
1. Create a new project with HDRP Template
2. Window > Render Pipeline > Look Dev
3. Select the "Environment" tab > New Library > Load Library
4. Add new empty environment (+)
5. Duplicate environment currently selected
6. Edit > Undo Duplicate Environment > Undo Add Environment
7. Edit > Redo Create Object > Redo Create Object
Actual Result:
Exception is thrown when Undo and Redo operation is performed with the duplicate empty environment in the Look Dev window
Expected Result:
Undo and Redo operation is performed gracefully
Note: Undo and Redo operation functionality for Empty Environment under Environment Library is introduced in package version 8.2.0
Reproducible in:
2020.2.0b9, 2020.1.11f1 with package version 10.1.0, 10.0.0-preview.27, 9.0.0-preview.54, 8.2.0
Environment:
Windows 10 and macOS 10.15
Stack trace:
NullReferenceException: Object reference not set to an instance of an object
UnityEditor.Rendering.LookDev.EnvironmentElement.GetLatLongThumbnailTexture (UnityEditor.Rendering.LookDev.Environment environment, System.Int32 width) (at Library/PackageCache/com.unity.render-pipelines.core@10.1.0/Editor/LookDev/Environment.cs:310)
UnityEditor.Rendering.LookDev.DisplayWindow+<>c.<CreateEnvironment>b__39_2 (UnityEngine.UIElements.VisualElement e, System.Int32 i) (at Library/PackageCache/com.unity.render-pipelines.core@10.1.0/Editor/LookDev/DisplayWindow.EnvironmentLibrarySidePanel.cs:90)
UnityEngine.UIElements.ListView.Setup (UnityEngine.UIElements.ListView+RecycledItem recycledItem, System.Int32 newIndex) (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.ListView.ResizeHeight (System.Single height) (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.ListView.Refresh () (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.ListView.set_itemsSource (System.Collections.IList value) (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEditor.Rendering.LookDev.DisplayWindow.RefreshLibraryDisplay () (at Library/PackageCache/com.unity.render-pipelines.core@10.1.0/Editor/LookDev/DisplayWindow.EnvironmentLibrarySidePanel.cs:273)
UnityEditor.Rendering.LookDev.DisplayWindow.UnityEditor.Rendering.LookDev.IEnvironmentDisplayer.Repaint () (at Library/PackageCache/com.unity.render-pipelines.core@10.1.0/Editor/LookDev/DisplayWindow.EnvironmentLibrarySidePanel.cs:436)
UnityEditor.Rendering.LookDev.DisplayWindow.FullRefreshEnvironmentList () (at Library/PackageCache/com.unity.render-pipelines.core@10.1.0/Editor/LookDev/DisplayWindow.EnvironmentLibrarySidePanel.cs:479)
UnityEditor.Undo.Internal_CallUndoRedoPerformed () (at <27ac941b3da34983800e9a41b73eceef>:0)
ArgumentException: VisualElements are not siblings
UnityEngine.UIElements.VisualElement.PlaceBehind (UnityEngine.UIElements.VisualElement sibling) (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.ListView.Setup (UnityEngine.UIElements.ListView+RecycledItem recycledItem, System.Int32 newIndex) (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.ListView.ResizeHeight (System.Single height) (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.ListView.OnSizeChanged (UnityEngine.UIElements.GeometryChangedEvent evt) (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.EventCallbackFunctor`1[TEventType].Invoke (UnityEngine.UIElements.EventBase evt) (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.EventCallbackRegistry.InvokeCallbacks (UnityEngine.UIElements.EventBase evt) (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.CallbackEventHandler.HandleEvent (UnityEngine.UIElements.EventBase evt) (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.CallbackEventHandler.HandleEventAtTargetPhase (UnityEngine.UIElements.EventBase evt) (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.EventDispatchUtilities.PropagateEvent (UnityEngine.UIElements.EventBase evt) (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.DefaultDispatchingStrategy.DispatchEvent (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.IPanel panel) (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.EventDispatcher.ApplyDispatchingStrategies (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.IPanel panel, System.Boolean imguiEventIsInitiallyUsed) (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.EventDispatcher.ProcessEvent (UnityEngine.UIElements.EventBase evt, UnityEngine.UIElements.IPanel panel) (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.EventDispatcher.ProcessEventQueue () (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.EventDispatcher.OpenGate () (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.EventDispatcherGate.Dispose () (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.UIRLayoutUpdater.Update () (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.VisualTreeUpdater.UpdateVisualTreePhase (UnityEngine.UIElements.VisualTreeUpdatePhase phase) (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.Panel.ValidateLayout () (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.UIElementsUtility.DoDispatch (UnityEngine.UIElements.BaseVisualElementPanel panel) (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.UIElementsUtility.UnityEngine.UIElements.IUIElementsUtility.ProcessEvent (System.Int32 instanceID, System.IntPtr nativeEventPtr, System.Boolean& eventHandled) (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.UIEventRegistration.ProcessEvent (System.Int32 instanceID, System.IntPtr nativeEventPtr) (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.UIElements.UIEventRegistration+<>c.<.cctor>b__1_2 (System.Int32 i, System.IntPtr ptr) (at <519636828bf44b44aa4c317f8b947afe>:0)
UnityEngine.GUIUtility.ProcessEvent (System.Int32 instanceID, System.IntPtr nativeEventPtr, System.Boolean& result) (at <931b26b61f444e3485195721b0227b20>:0)
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Skinned Mesh Renderer with multiple Animator Components does not render when "Optimize Game Objects" is enabled
- [iOS]Certain characters are not displayed when using iOS devices with 18 OS and newer
- Trees do not render in 'Unity Terrain - URP Demo Scene'
- Silent crash when clicking in Scene View in a specific project
- The Player renders black on a Quest headset when MSAA, Post Processing, and Spacewarm depth submission are enabled
Add comment