Revision: 17263
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17263
Author: broken
Date: 2008-11-01 13:45:19 +0100 (Sat, 01 Nov 2008)
Log Message:
-----------
* Tweaked the spin force field a bit. It worked great for its purpose
before, but wasn't playing nice with the other force fields (was
overwriting the velocity rather than acting as a force). This version is
slightly different, but will work a lot better with other force fields too.
Modified Paths:
--------------
branches/sim_physics/source/blender/blenkernel/intern/effect.c
Modified: branches/sim_physics/source/blender/blenkernel/intern/effect.c
===================================================================
--- branches/sim_physics/source/blender/blenkernel/intern/effect.c
2008-11-01 11:35:59 UTC (rev 17262)
+++ branches/sim_physics/source/blender/blenkernel/intern/effect.c
2008-11-01 12:45:19 UTC (rev 17263)
@@ -422,18 +422,25 @@
break;
case PFIELD_SPIN:
+ {
+ float inward[3];
+
Projf(temp, velocity, eff_vel);
-
Crossf(mag_vec,eff_vel,vec_to_part);
+ Crossf(inward, mag_vec, eff_vel);
Normalize(mag_vec);
+ VecSubf(mag_vec, mag_vec, inward);
+
VecMulf(mag_vec,force_val*distance*falloff);
VecAddf(mag_vec, mag_vec, temp);
-
- VecCopyf(velocity, mag_vec);
-
+
+ /* compensate for existing velocity */
+ VecSubf(mag_vec, mag_vec, velocity);
+ VecAddf(field,field,mag_vec);
break;
+ }
case PFIELD_MAGNET:
if(planar)
VecCopyf(temp,eff_vel);
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs