| .. | .. |
|---|
| 214 | 214 | } |
|---|
| 215 | 215 | } |
|---|
| 216 | 216 | |
|---|
| 217 | + static Vector3f g = new Vector3f(); |
|---|
| 218 | + static Vector3f w = new Vector3f(); |
|---|
| 219 | + |
|---|
| 220 | + static public Vector3f wind = new Vector3f(); |
|---|
| 221 | + static public Vector3f pos = new Vector3f(); |
|---|
| 222 | + |
|---|
| 223 | + static public Vector3f min = new Vector3f(); |
|---|
| 224 | + static public Vector3f max = new Vector3f(); |
|---|
| 225 | + |
|---|
| 226 | + static public boolean justclicked; |
|---|
| 227 | + |
|---|
| 217 | 228 | public void applyGravity() { |
|---|
| 218 | 229 | if (isStaticOrKinematicObject()) |
|---|
| 219 | 230 | return; |
|---|
| 220 | 231 | |
|---|
| 221 | | - applyCentralForce(gravity); |
|---|
| 232 | + g.y = gravity.y; |
|---|
| 233 | + applyCentralForce(g); |
|---|
| 234 | + |
|---|
| 235 | + if (pos.x == 0 && pos.y == 0 && pos.z == 0) |
|---|
| 236 | + return; |
|---|
| 237 | + |
|---|
| 238 | + justclicked = false; |
|---|
| 239 | + |
|---|
| 240 | + wind.set(pos); |
|---|
| 241 | + wind.x -= worldTransform.origin.x; |
|---|
| 242 | + wind.y -= worldTransform.origin.y; |
|---|
| 243 | + wind.z -= worldTransform.origin.z; |
|---|
| 244 | + |
|---|
| 245 | +// this.collisionShape.getAabb(worldTransform, min, max); |
|---|
| 246 | +// |
|---|
| 247 | +// if (pos.x < min.x || pos.x > max.x) |
|---|
| 248 | +// return; |
|---|
| 249 | +// if (pos.y < min.y || pos.y > max.y) |
|---|
| 250 | +// return; |
|---|
| 251 | +// if (pos.z < min.z || pos.z > max.z) |
|---|
| 252 | +// return; |
|---|
| 253 | + |
|---|
| 254 | + float dot = pos.x * wind.x + pos.y * wind.y + pos.z * wind.z; |
|---|
| 255 | + |
|---|
| 256 | + dot = 100; |
|---|
| 257 | + |
|---|
| 258 | + w.x = wind.x * gravity.z * dot; |
|---|
| 259 | + w.y = wind.y * gravity.z * dot; |
|---|
| 260 | + w.z = wind.z * gravity.z * dot; |
|---|
| 261 | + |
|---|
| 262 | + System.out.print("min = " + min); |
|---|
| 263 | + System.out.println("; max = " + max); |
|---|
| 264 | + |
|---|
| 265 | + applyCentralForce(w); |
|---|
| 222 | 266 | } |
|---|
| 223 | 267 | |
|---|
| 224 | 268 | public void setGravity(Vector3f acceleration) { |
|---|