diff --git a/spine-unity/Assets/Spine/Runtime/spine-unity/Mesh Generation/SkeletonRendererInstruction.cs b/spine-unity/Assets/Spine/Runtime/spine-unity/Mesh Generation/SkeletonRendererInstruction.cs index c08c87de0..2c23d0a6e 100644 --- a/spine-unity/Assets/Spine/Runtime/spine-unity/Mesh Generation/SkeletonRendererInstruction.cs +++ b/spine-unity/Assets/Spine/Runtime/spine-unity/Mesh Generation/SkeletonRendererInstruction.cs @@ -147,14 +147,14 @@ namespace Spine.Unity { if (calledFromMainThread && !Application.isPlaying) return true; #endif - if (a.hasActiveClipping || b.hasActiveClipping) return true; // Triangles are unpredictable when clipping is active. + if (a.immutableTriangles != b.immutableTriangles) return true; + if (a.immutableTriangles) return false; + // Everything below assumes the raw vertex and triangle counts were used. (ie, no clipping was done) if (a.rawVertexCount != b.rawVertexCount) return true; - if (a.immutableTriangles != b.immutableTriangles) return true; - int attachmentCountB = b.attachments.Count; if (a.attachments.Count != attachmentCountB) return true; // Bounds check for the looped storedAttachments count below.