Particle collisions upgrade:
authorJanne Karhu <jhkarh@gmail.com>
Sat, 13 Sep 2008 18:09:41 +0000 (18:09 +0000)
committerJanne Karhu <jhkarh@gmail.com>
Sat, 13 Sep 2008 18:09:41 +0000 (18:09 +0000)
commitd2186508da224805db8d2fe299738a94e1a5e750
tree7c93d7d69b3d055ceeb5dca0c4d8b4d1bb6174db
parent8925ae60428ed213fd8cb1271671e6ca56fda70e
Particle collisions upgrade:

- Particle now use the deflector objects collision modifier data to collide with deflectors and as a result can now use the velocity of the colliding object for more realistic collisions.
- Dynamic rotations are also quite a bit more realistic and are related to the friction setting of the deflector (to get any dynamic rotations there has to be some friction). This is largely due to the separate handling of rolling friction (approximated to be 1% of normal sliding friction).
- Collisions should be a bit faster on complex deflectors due to the tree structure used by the collision modifier.
- Collision should also generally be a bit more accurate.

To be noted: Only the average velocity of individual deflector faces is used, so collisions with rotating or deforming objects can't be handled accurately - this would require much more complex calculations. Subdividing the deflector object surface to smaller faces can help with this as the individual face velocities become more linear.
source/blender/blenkernel/intern/effect.c
source/blender/blenkernel/intern/particle_system.c
source/blender/blenkernel/intern/shrinkwrap.c
source/blender/blenlib/BLI_kdopbvh.h
source/blender/blenlib/intern/BLI_kdopbvh.c
source/blender/makesdna/DNA_particle_types.h