[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [35870] trunk/blender/source/blender/ blenkernel/intern/effect.c: Fix for [#26665] Force field absorption does not work
Janne Karhu
jhkarh at gmail.com
Tue Mar 29 14:50:43 CEST 2011
Revision: 35870
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=35870
Author: jhk
Date: 2011-03-29 12:50:43 +0000 (Tue, 29 Mar 2011)
Log Message:
-----------
Fix for [#26665] Force field absorption does not work
* Old bug fix led to all kinds of wrong behavior with "plane" shaped effectors, now things are working properly again.
Modified Paths:
--------------
trunk/blender/source/blender/blenkernel/intern/effect.c
Modified: trunk/blender/source/blender/blenkernel/intern/effect.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/effect.c 2011-03-29 12:10:41 UTC (rev 35869)
+++ trunk/blender/source/blender/blenkernel/intern/effect.c 2011-03-29 12:50:43 UTC (rev 35870)
@@ -687,13 +687,16 @@
/* use z-axis as normal*/
normalize_v3_v3(efd->nor, ob->obmat[2]);
- /* for vortex the shape chooses between old / new force */
if(eff->pd && eff->pd->shape == PFIELD_SHAPE_PLANE) {
- /* efd->loc is closes point on effector xy-plane */
float temp[3], translate[3];
sub_v3_v3v3(temp, point->loc, ob->obmat[3]);
project_v3_v3v3(translate, temp, efd->nor);
- add_v3_v3v3(efd->loc, ob->obmat[3], translate);
+
+ /* for vortex the shape chooses between old / new force */
+ if(eff->pd->forcefield == PFIELD_VORTEX)
+ add_v3_v3v3(efd->loc, ob->obmat[3], translate);
+ else /* normally efd->loc is closest point on effector xy-plane */
+ sub_v3_v3v3(efd->loc, point->loc, translate);
}
else {
VECCOPY(efd->loc, ob->obmat[3]);
More information about the Bf-blender-cvs
mailing list