Przeglądaj źródła

Fixed a typo in the com.jme3.bullet.control.ragdoll package and refactored the change

git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@7254 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
rem..om 14 lat temu
rodzic
commit
bfd49c43e3

+ 41 - 9
engine/src/jbullet/com/jme3/bullet/control/RagdollControl.java

@@ -1,7 +1,38 @@
+/*
+ * Copyright (c) 2009-2010 jMonkeyEngine
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ *   notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in the
+ *   documentation and/or other materials provided with the distribution.
+ *
+ * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
+ *   may be used to endorse or promote products derived from this software
+ *   without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
 package com.jme3.bullet.control;
 package com.jme3.bullet.control;
 
 
-import com.jme3.bullet.control.radoll.RagdollPreset;
-import com.jme3.bullet.control.radoll.HumanoidRagdollPreset;
+import com.jme3.bullet.control.ragdoll.RagdollPreset;
+import com.jme3.bullet.control.ragdoll.HumanoidRagdollPreset;
 import com.jme3.animation.AnimControl;
 import com.jme3.animation.AnimControl;
 import com.jme3.animation.Bone;
 import com.jme3.animation.Bone;
 import com.jme3.animation.Skeleton;
 import com.jme3.animation.Skeleton;
@@ -41,6 +72,10 @@ import java.util.Map;
 import java.util.logging.Level;
 import java.util.logging.Level;
 import java.util.logging.Logger;
 import java.util.logging.Logger;
 
 
+/**
+ * 
+ * @author Normen Hansen and Rémy Bouquet (Nehon)
+ */
 public class RagdollControl implements PhysicsControl, PhysicsCollisionListener {
 public class RagdollControl implements PhysicsControl, PhysicsCollisionListener {
 
 
     protected static final Logger logger = Logger.getLogger(RagdollControl.class.getName());
     protected static final Logger logger = Logger.getLogger(RagdollControl.class.getName());
@@ -79,8 +114,7 @@ public class RagdollControl implements PhysicsControl, PhysicsCollisionListener
 
 
             Quaternion q2 = vars.quat1;
             Quaternion q2 = vars.quat1;
             Quaternion q3 = vars.quat2;
             Quaternion q3 = vars.quat2;
-            Vector3f pos = vars.vect2;
-            //   skeleton.reset();
+          
             for (PhysicsBoneLink link : boneLinks.values()) {
             for (PhysicsBoneLink link : boneLinks.values()) {
 
 
                 Vector3f p = link.rigidBody.getMotionState().getWorldLocation();
                 Vector3f p = link.rigidBody.getMotionState().getWorldLocation();
@@ -117,8 +151,7 @@ public class RagdollControl implements PhysicsControl, PhysicsCollisionListener
                 }
                 }
 
 
                 Vector3f position = vars.vect1;
                 Vector3f position = vars.vect1;
-                Quaternion rotation = vars.quat1;
-                //Vector3f pos2 = vars.vect2;
+                Quaternion rotation = vars.quat1;           
 
 
                 //computing position from rotation and scale
                 //computing position from rotation and scale
                 targetModel.getWorldTransform().transformVector(link.bone.getModelSpacePosition(), position);
                 targetModel.getWorldTransform().transformVector(link.bone.getModelSpacePosition(), position);
@@ -207,8 +240,7 @@ public class RagdollControl implements PhysicsControl, PhysicsCollisionListener
         skeleton = animControl.getSkeleton();
         skeleton = animControl.getSkeleton();
         skeleton.resetAndUpdate();
         skeleton.resetAndUpdate();
         for (int i = 0; i < skeleton.getRoots().length; i++) {
         for (int i = 0; i < skeleton.getRoots().length; i++) {
-            Bone childBone = skeleton.getRoots()[i];
-            //  childBone.setUserControl(true);
+            Bone childBone = skeleton.getRoots()[i];           
             if (childBone.getParent() == null) {
             if (childBone.getParent() == null) {
                 // Quaternion parentRot= childBone.getModelSpaceRotation().mult(initRotation);
                 // Quaternion parentRot= childBone.getModelSpaceRotation().mult(initRotation);
                 logger.log(Level.INFO, "Found root bone in skeleton {0}", skeleton);
                 logger.log(Level.INFO, "Found root bone in skeleton {0}", skeleton);
@@ -553,7 +585,7 @@ public class RagdollControl implements PhysicsControl, PhysicsCollisionListener
                 hitObject = objA;
                 hitObject = objA;
 
 
             }
             }
-        }
+        }    
 
 
         if (hit && event.getAppliedImpulse() > eventDispatchImpulseThreshold) {
         if (hit && event.getAppliedImpulse() > eventDispatchImpulseThreshold) {
             // System.out.println("trigger impact " + event.getNodeA() + " " + event.getNodeB() + " " + event.getAppliedImpulse());
             // System.out.println("trigger impact " + event.getNodeA() + " " + event.getNodeB() + " " + event.getAppliedImpulse());

+ 1 - 1
engine/src/jbullet/com/jme3/bullet/control/radoll/HumanoidRagdollPreset.java → engine/src/jbullet/com/jme3/bullet/control/ragdoll/HumanoidRagdollPreset.java

@@ -2,7 +2,7 @@
  * To change this template, choose Tools | Templates
  * To change this template, choose Tools | Templates
  * and open the template in the editor.
  * and open the template in the editor.
  */
  */
-package com.jme3.bullet.control.radoll;
+package com.jme3.bullet.control.ragdoll;
 
 
 import com.jme3.math.FastMath;
 import com.jme3.math.FastMath;
 
 

+ 1 - 1
engine/src/jbullet/com/jme3/bullet/control/radoll/RagdollPreset.java → engine/src/jbullet/com/jme3/bullet/control/ragdoll/RagdollPreset.java

@@ -2,7 +2,7 @@
  * To change this template, choose Tools | Templates
  * To change this template, choose Tools | Templates
  * and open the template in the editor.
  * and open the template in the editor.
  */
  */
-package com.jme3.bullet.control.radoll;
+package com.jme3.bullet.control.ragdoll;
 
 
 import com.jme3.bullet.joints.SixDofJoint;
 import com.jme3.bullet.joints.SixDofJoint;
 import java.util.HashMap;
 import java.util.HashMap;