Animation record material shader property - UndoTracker error

Issue #883 new
hugh created an issue

Unity Version: 2021.3

Odin Version: 3.1.4

I wanted to record some shader property modify in animation window, but it dose not work, and it will report an error in console.

NullReferenceException: Object reference not set to an instance of an object
Sirenix.OdinInspector.Editor.UndoTracker.PostProcessModifications (UnityEditor.UndoPropertyModification[] modifications) (at Assets/Plugins/Sirenix/Odin Inspector/Source/Sirenix.OdinInspector.Editor/Utilities/UndoTracker.cs:53)
UnityEditor.Undo.InvokePostprocessModifications (UnityEditor.UndoPropertyModification[] modifications) (at <ff7afc7e8d1545fdb90afb5796fa17a2>:0)
UnityEditorInternal.MaterialAnimationUtility.ApplyMaterialModificationToAnimationRecording (UnityEditor.PropertyModification[] modifications) (at <ff7afc7e8d1545fdb90afb5796fa17a2>:0)
UnityEditorInternal.MaterialAnimationUtility.ApplyMaterialModificationToAnimationRecording (UnityEditor.MaterialProperty materialProp, System.Int32 changedMask, UnityEngine.Renderer target, System.Object oldValue) (at <ff7afc7e8d1545fdb90afb5796fa17a2>:0)
UnityEditor.MaterialEditor+ForwardApplyMaterialModification.DidModifyAnimationModeMaterialProperty (UnityEditor.MaterialProperty property, System.Int32 changedMask, System.Object previousValue) (at <ff7afc7e8d1545fdb90afb5796fa17a2>:0)
UnityEditor.MaterialProperty.ApplyProperty (System.Object previousValue, System.Int32 changedPropertyMask) (at <ff7afc7e8d1545fdb90afb5796fa17a2>:0)
UnityEditor.MaterialProperty.ApplyProperty (System.Object newValue) (at <ff7afc7e8d1545fdb90afb5796fa17a2>:0)
UnityEditor.MaterialProperty.set_floatValue (System.Single value) (at <ff7afc7e8d1545fdb90afb5796fa17a2>:0)
UnityEditor.MaterialEditor.DoPowerRangeProperty (UnityEngine.Rect position, UnityEditor.MaterialProperty prop, UnityEngine.GUIContent label, System.Single power) (at <ff7afc7e8d1545fdb90afb5796fa17a2>:0)
UnityEditor.MaterialEditor.RangePropertyInternal (UnityEngine.Rect position, UnityEditor.MaterialProperty prop, UnityEngine.GUIContent label) (at <ff7afc7e8d1545fdb90afb5796fa17a2>:0)
UnityEditor.MaterialEditor.DefaultShaderPropertyInternal (UnityEngine.Rect position, UnityEditor.MaterialProperty prop, UnityEngine.GUIContent label) (at <ff7afc7e8d1545fdb90afb5796fa17a2>:0)
UnityEditor.MaterialEditor.ShaderPropertyInternal (UnityEngine.Rect position, UnityEditor.MaterialProperty prop, UnityEngine.GUIContent label) (at <ff7afc7e8d1545fdb90afb5796fa17a2>:0)
UnityEditor.MaterialEditor.ShaderProperty (UnityEngine.Rect position, UnityEditor.MaterialProperty prop, UnityEngine.GUIContent label, System.Int32 labelIndent) (at <ff7afc7e8d1545fdb90afb5796fa17a2>:0)
UnityEditor.MaterialEditor.ShaderProperty (UnityEngine.Rect position, UnityEditor.MaterialProperty prop, UnityEngine.GUIContent label) (at <ff7afc7e8d1545fdb90afb5796fa17a2>:0)
UnityEditor.MaterialEditor.ShaderProperty (UnityEngine.Rect position, UnityEditor.MaterialProperty prop, System.String label) (at <ff7afc7e8d1545fdb90afb5796fa17a2>:0)
UnityEditor.MaterialEditor.PropertiesDefaultGUI (UnityEditor.MaterialProperty[] props) (at <ff7afc7e8d1545fdb90afb5796fa17a2>:0)
UnityEditor.MaterialEditor.PropertiesGUI () (at <ff7afc7e8d1545fdb90afb5796fa17a2>:0)
UnityEditor.MaterialEditor.OnInspectorGUI () (at <ff7afc7e8d1545fdb90afb5796fa17a2>:0)
UnityEditor.UIElements.InspectorElement+<>c__DisplayClass59_0.<CreateIMGUIInspectorFromEditor>b__0 () (at <873b9ff5ca8944f5969d0b8a26493544>:0)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr, Boolean&)

Comments (1)

  1. Log in to comment