Microsplat and MM2 Node Errors
Steps to reproduce:
- Import MM2 v2.0.5, Microsplat 3.46 (with HDRP Module)
- Create a new scene and Map Magic Object. Setup graph and add Microsplat Node (I actually just duplicated your Microsplat Demo scene and same issue when using my Microsplat Material)
Expected result: Use Microsplat node to texture the terrain Actual result: Have the following Errors when anything is changed or accessed on the Microsplat Node and the output is all black
Exception: Routine error: System.NullReferenceException: Object reference not set to an instance of an object at UnityEditor.AssetDatabase.Contains (UnityEngine.Object obj) [0x00001] in <a0a9ad37e16b4f7cb955e1101b72d4cc>:0 at MapMagic.Nodes.MatrixGenerators.CustomShaderOutput200+ApplyData.Apply (UnityEngine.Terrain terrain) [0x000d4] in D:\Unity\EnvironmentHDRP\Assets\MapMagic\Generators\Matrix\Runtime\TexturesOut.cs:402 at MapMagic.Nodes.MatrixGenerators.MicroSplatOutput200+ApplyData.Apply (UnityEngine.Terrain terrain) [0x00105] in D:\Unity\EnvironmentHDRP\Assets\MapMagic\Compatibility\Runtime\MicroSplatOutput.cs:115 at MapMagic.Terrains.TerrainTile.ApplyNow (MapMagic.Terrains.TerrainTile+DetailLevel det, MapMagic.Products.StopToken stop) [0x0003c] in D:\Unity\EnvironmentHDRP\Assets\MapMagic\Terrains\TerrainTile.cs:735 at MapMagic.Terrains.TerrainTile+<>c__DisplayClass39_0.<Generate>b__0 () [0x00000] in D:\Unity\EnvironmentHDRP\Assets\MapMagic\Terrains\TerrainTile.cs:709 at Den.Tools.Tasks.CoroutineManager.Update () [0x000f0] in D:\Unity\EnvironmentHDRP\Assets\MapMagic\Tools\ThreadManager\CoroutineManager.cs:136 Den.Tools.Tasks.CoroutineManager.Update () (at Assets/MapMagic/Tools/ThreadManager/CoroutineManager.cs:137) MapMagic.Core.MapMagicObject.Update () (at Assets/MapMagic/Core/MapMagicObject.cs:144)
and
'NullReferenceException: Object reference not set to an instance of an object UnityEditor.AssetDatabase.Contains (UnityEngine.Object obj) (at :0) MapMagic.Nodes.MatrixGenerators.CustomShaderOutput200+ApplyData.Apply (UnityEngine.Terrain terrain) (at Assets/MapMagic/Generators/Matrix/Runtime/TexturesOut.cs:402) MapMagic.Nodes.MatrixGenerators.MicroSplatOutput200+ApplyData.Apply (UnityEngine.Terrain terrain) (at Assets/MapMagic/Compatibility/Runtime/MicroSplatOutput.cs:115) MapMagic.Terrains.TerrainTile+d__41.MoveNext () (at Assets/MapMagic/Terrains/TerrainTile.cs:787) Den.Tools.Tasks.CoroutineManager.Update () (at Assets/MapMagic/Tools/ThreadManager/CoroutineManager.cs:147) MapMagic.Core.MapMagicObject.Update () (at Assets/MapMagic/Core/MapMagicObject.cs:144) MapMagic.Core.MapMagicObject.EditorUpdate () (at Assets/MapMagic/Core/MapMagicObject.cs:136) System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at :0) Rethrow as TargetInvocationException: Exception has been thrown by the target of an invocation. System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at :0) System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) (at :0) System.Delegate.DynamicInvokeImpl (System.Object[] args) (at :0) System.MulticastDelegate.DynamicInvokeImpl (System.Object[] args) (at :0) System.Delegate.DynamicInvoke (System.Object[] args) (at :0) UnityEditor.EditorApplication.Internal_CallUpdateFunctions ())'