Revision: 24892
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=24892
Author: jhk
Date: 2009-11-25 18:46:10 +0100 (Wed, 25 Nov 2009)
Log Message:
-----------
Verlet integration method for particles (patch provided by farsthary).
Modified Paths:
--------------
trunk/blender/source/blender/blenkernel/intern/particle_system.c
trunk/blender/source/blender/makesdna/DNA_particle_types.h
trunk/blender/source/blender/makesrna/intern/rna_particle.c
Modified: trunk/blender/source/blender/blenkernel/intern/particle_system.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/particle_system.c
2009-11-25 15:00:29 UTC (rev 24891)
+++ trunk/blender/source/blender/blenkernel/intern/particle_system.c
2009-11-25 17:46:10 UTC (rev 24892)
@@ -2287,6 +2287,9 @@
case PART_INT_RK4:
steps=4;
break;
+ case PART_INT_VERLET:
+ steps=1;
+ break;
}
copy_particle_key(states,&pa->state,1);
@@ -2392,6 +2395,13 @@
VECADDFAC(pa->state.vel,pa->state.vel,dv[3],1.0f/6.0f);
}
break;
+ case PART_INT_VERLET: /* Verlet integration */
+
VECADDFAC(pa->state.vel,pa->state.vel,force,dtime);
+
VECADDFAC(pa->state.co,pa->state.co,pa->state.vel,dtime);
+
+
VECSUB(pa->state.vel,pa->state.co,pa->prev_state.co);
+ mul_v3_fl(pa->state.vel,1.0f/dtime);
+ break;
}
}
Modified: trunk/blender/source/blender/makesdna/DNA_particle_types.h
===================================================================
--- trunk/blender/source/blender/makesdna/DNA_particle_types.h 2009-11-25
15:00:29 UTC (rev 24891)
+++ trunk/blender/source/blender/makesdna/DNA_particle_types.h 2009-11-25
17:46:10 UTC (rev 24892)
@@ -391,6 +391,7 @@
#define PART_INT_EULER 0
#define PART_INT_MIDPOINT 1
#define PART_INT_RK4 2
+#define PART_INT_VERLET 3
/* part->rotmode */
#define PART_ROT_NOR 1
Modified: trunk/blender/source/blender/makesrna/intern/rna_particle.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_particle.c 2009-11-25
15:00:29 UTC (rev 24891)
+++ trunk/blender/source/blender/makesrna/intern/rna_particle.c 2009-11-25
17:46:10 UTC (rev 24892)
@@ -917,6 +917,7 @@
static EnumPropertyItem integrator_type_items[] = {
{PART_INT_EULER, "EULER", 0, "Euler", ""},
+ {PART_INT_VERLET, "VERLET", 0, "Verlet", ""},
{PART_INT_MIDPOINT, "MIDPOINT", 0, "Midpoint", ""},
{PART_INT_RK4, "RK4", 0, "RK4", ""},
{0, NULL, 0, NULL, NULL}
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs