max = 10;
gravity = .006;
gravity = .006;
dx = -pa.x;
dy = -pa.y;
dz = -pa.z;
//dist = Math.sqrt(dx*dx + dy*dy + dz*dz);
//dsg = dist * dist * gravity;
dsg= (dx*dx + dy*dy + dz*dz) * gravity;
pa.vx += dx / dsg;
pa.vy += dy / dsg;
pa.vz += dz / dsg;
pa.vx = (pa.vx > max) ? max : ( (pa.vx < -max) ? -max : pa.vx );
pa.vy = (pa.vy > max) ? max : ( (pa.vy < -max) ? -max : pa.vy );
pa.vz = (pa.vz > max) ? max : ( (pa.vz < -max) ? -max : pa.vz );
pa.x += pa.vx;
pa.y += pa.vy;
pa.z += pa.vz;


November 19th, 200911:42 pm
Social comments and analytics for this post…
This post was mentioned on Twitter by simppafi: Lab65: http://www.simppa.fi/blog/?p=515 BlackHole…
A bit late, but why don’t you substitute
dist = Math.sqrt(dx*dx + dy*dy + dz*dz);
dsg = dist * dist * gravity;
for
dsg= (dx*dx + dy*dy + dz*dz) * gravity;
Yes you’re absolutely right about that. It would be much much faster and smarter that way. Didn’t think straight with this one. Thanks.