瀏覽代碼

Merge pull request #1004 from BabylonJS/RaananW-spring-joint

Update babylon.cannonJSPlugin.ts
Raanan Weber 9 年之前
父節點
當前提交
cd87e12907
共有 1 個文件被更改,包括 8 次插入1 次删除
  1. 8 1
      src/Physics/Plugins/babylon.cannonJSPlugin.ts

+ 8 - 1
src/Physics/Plugins/babylon.cannonJSPlugin.ts

@@ -191,7 +191,14 @@
             //set the collideConnected flag after the creation, since DistanceJoint ignores it.
             constraint.collideConnected = !!jointData.collision
             impostorJoint.joint.physicsJoint = constraint;
-            this.world.addConstraint(constraint);
+            //don't add spring as constraint, as it is not one.
+            if(impostorJoint.joint.type !== PhysicsJoint.SpringJoint) {
+                this.world.addConstraint(constraint);
+            } else {
+                impostorJoint.mainImpostor.registerAfterPhysicsStep(function() {
+                    constraint.applyForce();
+                });
+            }
         }
 
         public removeJoint(joint: PhysicsImpostorJoint) {