From c3c47406ac43dafd51e6ad1d7b92a794bd69b7d6 Mon Sep 17 00:00:00 2001 From: Normand Briere <nbriere@noware.ca> Date: Fri, 27 Sep 2019 20:03:29 -0400 Subject: [PATCH] Fix/patch click flicking. --- CameraPane.java | 16 +++++++++++----- PhysicsNode.java | 1 + GroupEditor.java | 1 + com/bulletphysics/dynamics/RigidBody.java | 21 ++++++++++++--------- 4 files changed, 25 insertions(+), 14 deletions(-) diff --git a/CameraPane.java b/CameraPane.java index b558c23..d075633 100644 --- a/CameraPane.java +++ b/CameraPane.java @@ -250,7 +250,7 @@ public javax.media.opengl.GL GetGL0() { - return null; + return currentGL; } public int GenList() @@ -10761,7 +10761,9 @@ } /**/ - if (selection) + boolean control = ((modifiers & CTRL) != 0); + + if (selection && (!Globals.isLIVE() || control)) { selectbuffer.display(); return; @@ -14346,8 +14348,6 @@ 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()); } @@ -14655,7 +14655,7 @@ boolean jump; boolean live; - boolean mute; + boolean mute = false; // void JumpToTarget() // { @@ -15367,6 +15367,12 @@ public void mouseReleased(MouseEvent e) { + if (isRenderer && !movingcamera) + { + RigidBody.justclicked = true; + System.out.println("justclicked: " + e); + } + Globals.MOUSEDRAGGED = false; movingcamera = false; diff --git a/GroupEditor.java b/GroupEditor.java index 13ef3d2..bed60d6 100644 --- a/GroupEditor.java +++ b/GroupEditor.java @@ -2524,6 +2524,7 @@ // ragdoll.toParent[3][2] = -0.01; makeSomething(ragdoll); + group(new PhysicsNode()); //makeSomething(new VehicleDemo()); } else /* diff --git a/PhysicsNode.java b/PhysicsNode.java index 3d3ccb0..e3b6fc9 100644 --- a/PhysicsNode.java +++ b/PhysicsNode.java @@ -80,6 +80,7 @@ live = true; gravity = 1; + wind = 1; } void Reset() diff --git a/com/bulletphysics/dynamics/RigidBody.java b/com/bulletphysics/dynamics/RigidBody.java index 78b1b5a..4d96feb 100755 --- a/com/bulletphysics/dynamics/RigidBody.java +++ b/com/bulletphysics/dynamics/RigidBody.java @@ -242,23 +242,26 @@ // 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; + 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; + dot = 100; w.x = wind.x * gravity.z * dot; w.y = wind.y * gravity.z * dot; w.z = wind.z * gravity.z * dot; + System.out.print("min = " + min); + System.out.println("; max = " + max); + applyCentralForce(w); } -- Gitblit v1.6.2