From 51e45bf615e1e2b4aca2edf9f7333b687c7d015e Mon Sep 17 00:00:00 2001 From: Normand Briere <nbriere@noware.ca> Date: Tue, 24 Sep 2019 21:07:45 -0400 Subject: [PATCH] Remove hands. --- CameraPane.java | 48 ++++++++++----- PhysicsNode.java | 2 Merge.java | 2 com/bulletphysics/dynamics/RigidBody.java | 29 ++++++++- Object3D.java | 2 PhysicsEditor.java | 4 RagDoll.java | 60 +++++++++++-------- GenericJoint.java | 2 8 files changed, 96 insertions(+), 53 deletions(-) diff --git a/CameraPane.java b/CameraPane.java index f35d440..b558c23 100644 --- a/CameraPane.java +++ b/CameraPane.java @@ -6962,30 +6962,30 @@ short residu = 0; // wraparound workarounds - short fuck = (short) (buffer[i] & 0xFF); + short ww = (short) (buffer[i] & 0xFF); /* - residu += (fuck%2); - if(fuck/2 < 256-residu/2) + residu += (ww%2); + if(ww/2 < 256-residu/2) { - fuck = (short)((fuck/2) + residu/2); + ww = (short)((ww/2) + residu/2); if(residu == 2) residu = 0; } else { residu = 0; - fuck /= 2; + ww /= 2; } */ - if (i < imglength / 3 || rnd.nextFloat() < 0.5 || fuck >= 254) + if (i < imglength / 3 || rnd.nextFloat() < 0.5 || ww >= 254) { - fuck /= 2; + ww /= 2; } else { - fuck = (short) ((fuck / 2) + fuck % 2); + ww = (short) ((ww / 2) + ww % 2); } - buffer[i] = (byte) fuck; + buffer[i] = (byte) ww; } //System.out.print(bytes[i] + " "); //if(buffer[i] >= 0 && buffer[i]<=eps-1) buffer[i] = eps; @@ -14341,10 +14341,13 @@ public void mouseClicked(MouseEvent e) { System.out.println("mouseClicked: " + e); + System.exit(0); } public void mousePressed(MouseEvent e) { + RigidBody.justclicked = true; + System.out.println("justclicked: " + e); //System.out.println("mousePressed: " + e); clickStart(e.getX(), e.getY(), e.getModifiers(), e.getModifiersEx()); } @@ -14668,13 +14671,20 @@ // only one thread!? synchronized void StepToTarget(boolean jump) { - RigidBody.pos.x = (float)manipCamera.lookAt.x; - RigidBody.pos.y = (float)manipCamera.lookAt.y; - RigidBody.pos.z = (float)manipCamera.lookAt.z; -// RigidBody.wind.x = (float)manipCamera.right.x; -// RigidBody.wind.y = (float)manipCamera.right.y; -// RigidBody.wind.z = (float)manipCamera.right.z; - //RigidBody.wind.normalize(); + RigidBody.pos.x = 0; + RigidBody.pos.y = 0; + RigidBody.pos.z = 0; + if (RigidBody.justclicked) + { + RigidBody.pos.x = (float)manipCamera.lookAt.x; + RigidBody.pos.y = (float)manipCamera.lookAt.y; + RigidBody.pos.z = (float)manipCamera.lookAt.z; + RigidBody.wind.set(RigidBody.pos); + RigidBody.wind.x -= (float)manipCamera.location.x; + RigidBody.wind.y -= (float)manipCamera.location.y; + RigidBody.wind.z -= (float)manipCamera.location.z; + RigidBody.wind.normalize(); + } if (mute) return; @@ -15022,6 +15032,8 @@ void GoUp(int mod) { + RigidBody.justclicked = true; + MODIFIERS |= COMMAND; /**/ boolean isVR = (mouseMode&VR)!=0; @@ -16752,7 +16764,8 @@ public boolean mouseDrag(Event evt, int x, int y) { - //System.out.println("mouseDrag: " + evt); + System.out.println("mouseDrag: " + evt); + System.exit(0); /* drag = true; //System.out.println("Mouse DRAG"); @@ -16871,6 +16884,7 @@ public boolean mouseUp(Event evt, int x, int y) { System.out.println("mouseUp: " + evt); + System.exit(0); /* locked = false; if (isRenderer) diff --git a/GenericJoint.java b/GenericJoint.java index 9c45117..67a201d 100644 --- a/GenericJoint.java +++ b/GenericJoint.java @@ -342,7 +342,7 @@ // assert(bRep != null); - if (Globals.isLIVE() && live && display.DrawMode() == display.SHADOW) // FUCK + if (Globals.isLIVE() && live && display.DrawMode() == display.SHADOW) // SHADOW { // float ms = getDeltaTimeMicroseconds(); // float minFPS = 1000000f / 60f; diff --git a/Merge.java b/Merge.java index 03408c4..0bbe248 100644 --- a/Merge.java +++ b/Merge.java @@ -144,7 +144,7 @@ if (bRep == null && GetObject() != null) renderme(); // display); // only once - if (/*display.LIVE && live &&*/link2master) // && display.drawMode == display.SHADOW) // FUCK!!! + if (/*display.LIVE && live &&*/link2master) // && display.drawMode == display.SHADOW) // SHADOW!!! { try { diff --git a/Object3D.java b/Object3D.java index b4eaccb..8077ac5 100644 --- a/Object3D.java +++ b/Object3D.java @@ -8349,7 +8349,7 @@ public int hashCode() { - // Fuck Vector... + // Do not use Vector... return System.identityHashCode(this); } diff --git a/PhysicsEditor.java b/PhysicsEditor.java index bc1c8c8..b5cfbe7 100644 --- a/PhysicsEditor.java +++ b/PhysicsEditor.java @@ -70,7 +70,7 @@ */ super.SetupUI2(oe); - gravityPanel = AddSlider(oe.ctrlPanel, "Gravity:", 0, 100.0, physicsnode.gravity, 1); + gravityPanel = AddSlider(oe.ctrlPanel, "Gravity:", 0, 10.0, physicsnode.gravity, 1); gravityField = (cNumberSlider)gravityPanel.getComponent(1); // oe.ctrlPanel.add(gravityLabel = new JLabel("Gravity: ")); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); @@ -79,7 +79,7 @@ oe.ctrlPanel.Return(); - windPanel = AddSlider(oe.ctrlPanel, "Wind:", 0, 100.0, physicsnode.wind, 1); + windPanel = AddSlider(oe.ctrlPanel, "Wind:", 0, 10.0, physicsnode.wind, 1); windField = (cNumberSlider)windPanel.getComponent(1); // oe.ctrlPanel.add(windLabel = new JLabel("Wind: ")); //, oe.aConstraints, oe.ctrlPanel.getComponentCount()-2); diff --git a/PhysicsNode.java b/PhysicsNode.java index ca3a422..3d3ccb0 100644 --- a/PhysicsNode.java +++ b/PhysicsNode.java @@ -112,7 +112,7 @@ void drawSelf(iCameraPane display, Object3D /*Composite*/ root, boolean selected, boolean blocked) { - if (Globals.isLIVE() && live && display.DrawMode() == display.SHADOW) // FUCK + if (Globals.isLIVE() && live && display.DrawMode() == display.SHADOW) // SHADOW { float ms = getDeltaTimeMicroseconds(); float minFPS = 1000000f / 60f; diff --git a/RagDoll.java b/RagDoll.java index 7e67857..e22ffb2 100644 --- a/RagDoll.java +++ b/RagDoll.java @@ -89,11 +89,11 @@ BODYPART_LEFT_UPPER_ARM, BODYPART_LEFT_LOWER_ARM, - BODYPART_LEFT_HAND, + //BODYPART_LEFT_HAND, BODYPART_RIGHT_UPPER_ARM, BODYPART_RIGHT_LOWER_ARM, - BODYPART_RIGHT_HAND, + //BODYPART_RIGHT_HAND, //BODYPART_GROUND, @@ -114,11 +114,11 @@ JOINT_LEFT_SHOULDER, JOINT_LEFT_ELBOW, - JOINT_LEFT_WRIST, + //JOINT_LEFT_WRIST, JOINT_RIGHT_SHOULDER, JOINT_RIGHT_ELBOW, - JOINT_RIGHT_WRIST, + //JOINT_RIGHT_WRIST, JOINT_COUNT } @@ -174,19 +174,19 @@ shapes[BodyPart.BODYPART_LEFT_UPPER_LEG.ordinal()] = new CapsuleShape(scale_ragdoll * 0.4f * thin, scale_ragdoll * 0.4f, node); shapes[BodyPart.BODYPART_LEFT_LOWER_LEG.ordinal()] = new CapsuleShape(scale_ragdoll * 0.37f * thin, scale_ragdoll * 0.37f, node); - shapes[BodyPart.BODYPART_LEFT_FOOT.ordinal()] = new CapsuleShape(scale_ragdoll * 0.1f * thin, scale_ragdoll * 0.1f, node); + shapes[BodyPart.BODYPART_LEFT_FOOT.ordinal()] = new CapsuleShape(scale_ragdoll * 0.2f * thin, scale_ragdoll * 0.2f, node); shapes[BodyPart.BODYPART_RIGHT_UPPER_LEG.ordinal()] = new CapsuleShape(scale_ragdoll * 0.4f * thin, scale_ragdoll * 0.4f, node); shapes[BodyPart.BODYPART_RIGHT_LOWER_LEG.ordinal()] = new CapsuleShape(scale_ragdoll * 0.37f * thin, scale_ragdoll * 0.37f, node); - shapes[BodyPart.BODYPART_RIGHT_FOOT.ordinal()] = new CapsuleShape(scale_ragdoll * 0.1f * thin, scale_ragdoll * 0.1f, node); + shapes[BodyPart.BODYPART_RIGHT_FOOT.ordinal()] = new CapsuleShape(scale_ragdoll * 0.2f * thin, scale_ragdoll * 0.2f, node); shapes[BodyPart.BODYPART_LEFT_UPPER_ARM.ordinal()] = new CapsuleShape(scale_ragdoll * upperarmlength * thin, scale_ragdoll * upperarmlength, node); shapes[BodyPart.BODYPART_LEFT_LOWER_ARM.ordinal()] = new CapsuleShape(scale_ragdoll * lowerarmlength * thin, scale_ragdoll * lowerarmlength, node); - shapes[BodyPart.BODYPART_LEFT_HAND.ordinal()] = new CapsuleShape(scale_ragdoll * handlength * thin, scale_ragdoll * handlength, node); + //shapes[BodyPart.BODYPART_LEFT_HAND.ordinal()] = new CapsuleShape(scale_ragdoll * handlength * thin, scale_ragdoll * handlength, node); shapes[BodyPart.BODYPART_RIGHT_UPPER_ARM.ordinal()] = new CapsuleShape(scale_ragdoll * upperarmlength * thin, scale_ragdoll * upperarmlength, node); shapes[BodyPart.BODYPART_RIGHT_LOWER_ARM.ordinal()] = new CapsuleShape(scale_ragdoll * lowerarmlength * thin, scale_ragdoll * lowerarmlength, node); - shapes[BodyPart.BODYPART_RIGHT_HAND.ordinal()] = new CapsuleShape(scale_ragdoll * handlength * thin, scale_ragdoll * handlength, node); + //shapes[BodyPart.BODYPART_RIGHT_HAND.ordinal()] = new CapsuleShape(scale_ragdoll * handlength * thin, scale_ragdoll * handlength, node); } //scale_ragdoll *= 1.25; @@ -329,15 +329,15 @@ body.getMotionState().setWorldTransform(tmpTrans); ((cRigidBody)body).anchor.set(tmpTrans.origin); - transform.setIdentity(); - if ((body = bodies[BodyPart.BODYPART_LEFT_HAND.ordinal()]) == null) - body = bodies[BodyPart.BODYPART_LEFT_HAND.ordinal()] = localCreateRigidBody(1f, 0, transform, shapes[BodyPart.BODYPART_LEFT_HAND.ordinal()]); - transform.origin.set(-(handlength/2 + lowerarmlength + upperarmlength + upperarmdist) * scale_ragdoll, 1.325f * scale_ragdoll, depth); - MatrixUtil.setEulerZYX(transform.basis, 0, 0, BulletGlobals.SIMD_HALF_PI); - tmpTrans.mul(offset, transform); - body.worldTransform.set(tmpTrans); - body.getMotionState().setWorldTransform(tmpTrans); - ((cRigidBody)body).anchor.set(tmpTrans.origin); +// transform.setIdentity(); +// if ((body = bodies[BodyPart.BODYPART_LEFT_HAND.ordinal()]) == null) +// body = bodies[BodyPart.BODYPART_LEFT_HAND.ordinal()] = localCreateRigidBody(1f, 0, transform, shapes[BodyPart.BODYPART_LEFT_HAND.ordinal()]); +// transform.origin.set(-(handlength/2 + lowerarmlength + upperarmlength + upperarmdist) * scale_ragdoll, 1.325f * scale_ragdoll, depth); +// MatrixUtil.setEulerZYX(transform.basis, 0, 0, BulletGlobals.SIMD_HALF_PI); +// tmpTrans.mul(offset, transform); +// body.worldTransform.set(tmpTrans); +// body.getMotionState().setWorldTransform(tmpTrans); +// ((cRigidBody)body).anchor.set(tmpTrans.origin); transform.setIdentity(); if ((body = bodies[BodyPart.BODYPART_RIGHT_UPPER_ARM.ordinal()]) == null) @@ -359,15 +359,15 @@ body.getMotionState().setWorldTransform(tmpTrans); ((cRigidBody)body).anchor.set(tmpTrans.origin); - transform.setIdentity(); - if ((body = bodies[BodyPart.BODYPART_RIGHT_HAND.ordinal()]) == null) - body = bodies[BodyPart.BODYPART_RIGHT_HAND.ordinal()] = localCreateRigidBody(1f, 0, transform, shapes[BodyPart.BODYPART_RIGHT_HAND.ordinal()]); - transform.origin.set((handlength/2 + lowerarmlength + upperarmlength + upperarmdist) * scale_ragdoll, 1.325f * scale_ragdoll, depth); - MatrixUtil.setEulerZYX(transform.basis, 0, 0, -BulletGlobals.SIMD_HALF_PI); - tmpTrans.mul(offset, transform); - body.worldTransform.set(tmpTrans); - body.getMotionState().setWorldTransform(tmpTrans); - ((cRigidBody)body).anchor.set(tmpTrans.origin); +// transform.setIdentity(); +// if ((body = bodies[BodyPart.BODYPART_RIGHT_HAND.ordinal()]) == null) +// body = bodies[BodyPart.BODYPART_RIGHT_HAND.ordinal()] = localCreateRigidBody(1f, 0, transform, shapes[BodyPart.BODYPART_RIGHT_HAND.ordinal()]); +// transform.origin.set((handlength/2 + lowerarmlength + upperarmlength + upperarmdist) * scale_ragdoll, 1.325f * scale_ragdoll, depth); +// MatrixUtil.setEulerZYX(transform.basis, 0, 0, -BulletGlobals.SIMD_HALF_PI); +// tmpTrans.mul(offset, transform); +// body.worldTransform.set(tmpTrans); +// body.getMotionState().setWorldTransform(tmpTrans); +// ((cRigidBody)body).anchor.set(tmpTrans.origin); // Setup some damping on the m_bodies for (int i = 0; i < BodyPart.BODYPART_COUNT.ordinal(); ++i) @@ -533,6 +533,7 @@ /// *************************** /// /// ******* LEFT WRIST ******** /// + /** if (links) { localA.setIdentity(); @@ -556,9 +557,11 @@ joints[JointType.JOINT_LEFT_WRIST.ordinal()] = joint6DOF; // ownerWorld.addConstraint(joints[JointType.JOINT_LEFT_WRIST.ordinal()], !selfcollision); } + /**/ /// *************************** /// /// ******* RIGHT WRIST ******** /// + /** if (links) { localA.setIdentity(); @@ -582,6 +585,7 @@ joints[JointType.JOINT_RIGHT_WRIST.ordinal()] = joint6DOF; // ownerWorld.addConstraint(joints[JointType.JOINT_RIGHT_WRIST.ordinal()], !selfcollision); } + /**/ /// ******* PELVIS ******** /// if (links) @@ -723,6 +727,7 @@ /// *************************** /// /// ******* LEFT ANKLE ******** /// + /**/ if (links) { localA.setIdentity(); @@ -746,9 +751,11 @@ joints[JointType.JOINT_LEFT_ANKLE.ordinal()] = joint6DOF; // ownerWorld.addConstraint(joints[JointType.JOINT_LEFT_KNEE.ordinal()], !selfcollision); } + /**/ /// *************************** /// /// ******* RIGHT ANKLE ******** /// + /**/ if (links) { localA.setIdentity(); @@ -772,6 +779,7 @@ joints[JointType.JOINT_RIGHT_ANKLE.ordinal()] = joint6DOF; // ownerWorld.addConstraint(joints[JointType.JOINT_RIGHT_KNEE.ordinal()], !selfcollision); } + /**/ /// *************************** /// diff --git a/com/bulletphysics/dynamics/RigidBody.java b/com/bulletphysics/dynamics/RigidBody.java index 75a9ea1..78b1b5a 100755 --- a/com/bulletphysics/dynamics/RigidBody.java +++ b/com/bulletphysics/dynamics/RigidBody.java @@ -216,9 +216,15 @@ static Vector3f g = new Vector3f(); static Vector3f w = new Vector3f(); + static public Vector3f wind = new Vector3f(); static public Vector3f pos = new Vector3f(); + static public Vector3f min = new Vector3f(); + static public Vector3f max = new Vector3f(); + + static public boolean justclicked; + public void applyGravity() { if (isStaticOrKinematicObject()) return; @@ -226,11 +232,25 @@ g.y = gravity.y; applyCentralForce(g); - wind.set(pos); - wind.x -= worldTransform.origin.x; - wind.y -= worldTransform.origin.y; - wind.z -= worldTransform.origin.z; + if (pos.x == 0 && pos.y == 0 && pos.z == 0) + return; + justclicked = false; + +// wind.set(pos); +// wind.x -= worldTransform.origin.x; +// wind.y -= worldTransform.origin.y; +// wind.z -= worldTransform.origin.z; + +// this.collisionShape.getAabb(worldTransform, min, max); +// +// if (pos.x < min.x || pos.x > max.x) +// return; +// if (pos.y < min.y || pos.y > max.y) +// return; +// if (pos.z < min.z || pos.z > max.z) +// return; + float dot = pos.x * wind.x + pos.y * wind.y + pos.z * wind.z; dot = 10; @@ -238,6 +258,7 @@ w.x = wind.x * gravity.z * dot; w.y = wind.y * gravity.z * dot; w.z = wind.z * gravity.z * dot; + applyCentralForce(w); } -- Gitblit v1.6.2