Make lattice deform safe for threading
authorSergey Sharybin <sergey.vfx@gmail.com>
Mon, 19 Aug 2013 10:11:48 +0000 (10:11 +0000)
committerSergey Sharybin <sergey.vfx@gmail.com>
Mon, 19 Aug 2013 10:11:48 +0000 (10:11 +0000)
commitc46cbc602e1007a15c6d9824ec34c41f124faeaa
tree3cc89f89a2601d7a8de18ef39b7207803b5f75fd
parentb9ae749480aeeb7e77f16ebe667ddfcf8b63650e
Make lattice deform safe for threading

Lattice deformation used to store some runtime data
inside of lattice datablock itself. It's something
which is REALLY bad. Ideally DNA shouldn't contain
and runtime data.

For now solved it in a way that initialization of
lattice deform will create a structure which contains
lattice object for which deformation is calculating
and that runtime data which used to be stored in
lattice datablock itself.

It works really fine for mesh deform modifier, but
there's still runtime data stored in particle system
DNA, It didn't look something easy to be solved, so
leaving this as-is for now.

--
svn merge -r58277:58278 -r58795:58796 ^/branches/soc-2013-depsgraph_mt
13 files changed:
source/blender/blenkernel/BKE_lattice.h
source/blender/blenkernel/BKE_particle.h
source/blender/blenkernel/intern/anim.c
source/blender/blenkernel/intern/lattice.c
source/blender/blenkernel/intern/particle.c
source/blender/blenkernel/intern/particle_system.c
source/blender/editors/space_view3d/drawobject.c
source/blender/makesdna/DNA_lattice_types.h
source/blender/makesdna/DNA_particle_types.h
source/blender/modifiers/intern/MOD_explode.c
source/blender/modifiers/intern/MOD_particleinstance.c
source/blender/render/intern/source/convertblender.c
source/blender/render/intern/source/pointdensity.c