From 216d6550407d43e723152beec4a65d330bb581e9 Mon Sep 17 00:00:00 2001 From: miku-666 <74728189+NessieHax@users.noreply.github.com> Date: Fri, 1 Mar 2024 15:35:49 +0100 Subject: [PATCH] SkinRenderer - Update ModelData_CollectionChanged add action --- PCK-Studio/Rendering/SkinRenderer.cs | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/PCK-Studio/Rendering/SkinRenderer.cs b/PCK-Studio/Rendering/SkinRenderer.cs index bdd2f224..1f06f56e 100644 --- a/PCK-Studio/Rendering/SkinRenderer.cs +++ b/PCK-Studio/Rendering/SkinRenderer.cs @@ -682,11 +682,18 @@ namespace PckStudio.Rendering #endif } + private void UpdateMesh(string name) + { + if (!meshStorage.ContainsKey(name)) + return; + meshStorage[name]?.UploadData(); + } + private void UploadMeshData() { - foreach (var cubeMesh in meshStorage?.Values) + foreach (var cubeMeshName in meshStorage?.Keys) { - cubeMesh?.UploadData(); + UpdateMesh(cubeMeshName); } } @@ -729,6 +736,12 @@ namespace PckStudio.Rendering switch (e.Action) { case NotifyCollectionChangedAction.Add: + if (e.NewItems[0] is SkinBOX addedBox) + { + AddCustomModelPart(addedBox); + UpdateMesh(addedBox.Type); + } + break; case NotifyCollectionChangedAction.Remove: case NotifyCollectionChangedAction.Replace: ReInitialzeSkinData();