Bladeren bron

Fix morph target sync issue

David Catuhe 4 jaren geleden
bovenliggende
commit
6fe94ed9a1
1 gewijzigde bestanden met toevoegingen van 9 en 0 verwijderingen
  1. 9 0
      src/Materials/Node/Blocks/Vertex/morphTargetsBlock.ts

+ 9 - 0
src/Materials/Node/Blocks/Vertex/morphTargetsBlock.ts

@@ -146,9 +146,18 @@ export class MorphTargetsBlock extends NodeMaterialBlock {
     }
 
     public prepareDefines(mesh: AbstractMesh, nodeMaterial: NodeMaterial, defines: NodeMaterialDefines) {
+        if ((<Mesh>mesh).morphTargetManager) {
+            const morphTargetManager = (<Mesh>mesh).morphTargetManager;
+            
+            if (morphTargetManager?.isUsingTextureForTargets && morphTargetManager.numInfluencers !== defines["NUM_MORPH_INFLUENCERS"]) {
+                defines.markAsAttributesDirty();
+            }
+        }
+
         if (!defines._areAttributesDirty) {
             return;
         }
+
         MaterialHelper.PrepareDefinesForMorphTargets(mesh, defines);
     }