Gravity Force
Fixes in demo
This commit is contained in:
parent
fc7d76637d
commit
f180233e66
3
build.js
3
build.js
@ -542,6 +542,9 @@
|
|||||||
var acc = mass * g;
|
var acc = mass * g;
|
||||||
var distance = new Vector(o1.position.x - o2.position.x, o1.position.y - o2.position.y, o1.position.z - o2.position.z);
|
var distance = new Vector(o1.position.x - o2.position.x, o1.position.y - o2.position.y, o1.position.z - o2.position.z);
|
||||||
this.force = new Vector(acc / (distance.x * distance.x), acc / (distance.y * distance.y), acc / (distance.z * distance.z));
|
this.force = new Vector(acc / (distance.x * distance.x), acc / (distance.y * distance.y), acc / (distance.z * distance.z));
|
||||||
|
if (this.force.x === Infinity) this.force.x = 0;
|
||||||
|
if (this.force.y === Infinity) this.force.y = 0;
|
||||||
|
if (this.force.z === Infinity) this.force.z = 0;
|
||||||
}
|
}
|
||||||
return {
|
return {
|
||||||
setters: [function (m) {
|
setters: [function (m) {
|
||||||
|
File diff suppressed because one or more lines are too long
@ -24,10 +24,10 @@ var middle = new Bolt.Vector(window.innerWidth / 2, window.innerHeight / 2, 0);
|
|||||||
for(var i = 0; i < 20; i++) {
|
for(var i = 0; i < 20; i++) {
|
||||||
var p = new Bolt.Particle({
|
var p = new Bolt.Particle({
|
||||||
position: middle.clone(),
|
position: middle.clone(),
|
||||||
mass: 1
|
mass: 100
|
||||||
});
|
});
|
||||||
|
|
||||||
var sphere = new LiThree.ObjectFactory.Sphere(50, 20, 20);
|
var sphere = new LiThree.ObjectFactory.Sphere(5, 20, 20);
|
||||||
sphere.color.rgb(0.2, 0.2, 0.2);
|
sphere.color.rgb(0.2, 0.2, 0.2);
|
||||||
|
|
||||||
world.add(sphere);
|
world.add(sphere);
|
||||||
@ -50,9 +50,9 @@ Bolt.Play.start(function() {
|
|||||||
for(var i = 1, len = Bolt.objects.length; i < len; i++) {
|
for(var i = 1, len = Bolt.objects.length; i < len; i++) {
|
||||||
var p = Bolt.objects[i];
|
var p = Bolt.objects[i];
|
||||||
|
|
||||||
// var mouseGravity = new Bolt.Force.generators.Gravity(p, mouse);
|
var mouseGravity = new Bolt.Force.generators.Gravity(p, mouse);
|
||||||
|
|
||||||
// Bolt.Force.add(p, mouseGravity);
|
Bolt.Force.add(p, mouseGravity);
|
||||||
|
|
||||||
syncPositions(p);
|
syncPositions(p);
|
||||||
}
|
}
|
||||||
|
@ -17,6 +17,9 @@ function Gravity(o1, o2) {
|
|||||||
acc / (distance.y*distance.y),
|
acc / (distance.y*distance.y),
|
||||||
acc / (distance.z*distance.z)
|
acc / (distance.z*distance.z)
|
||||||
);
|
);
|
||||||
|
if(this.force.x === Infinity) this.force.x = 0;
|
||||||
|
if(this.force.y === Infinity) this.force.y = 0;
|
||||||
|
if(this.force.z === Infinity) this.force.z = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
Gravity.prototype.apply = function(particle, duration) {
|
Gravity.prototype.apply = function(particle, duration) {
|
||||||
|
Loading…
Reference in New Issue
Block a user