Blender Git Commit Log

Git Commits -> Revision fe960a1

April 18, 2018, 13:45 (GMT)
Modifiers: Add wrapper functions with Mesh / DerivedMesh conversion

Makes the follow changes:

- Add new `deform*` and `apply*` function pointers to `ModifierTypeInfo` that take `Mesh`, and rename the old functions to indicate that they take `DerivedMesh`. These new functions are currently set to `NULL` for all modifiers.
- Add wrapper `modifier_deform*` and `modifier_apply*` functions in two variants: one that works with `Mesh` and the other which works with `DerivedMesh` that is named with `*_DM_depercated`. These functions check which type of data the modifier supports and converts if necessary
- Update the rest of Blender to be aware and make use of these new functions

The goal of these changes is to make it possible to port to using `Mesh` incrementally without ever needing to enter into a state where modifiers don't work. After everything has been ported over the old functions and wrappers could be removed.

Reviewers: campbellbarton, sergey, mont29

Subscribers: sybren

Tags: #bf_blender_2.8

Differential Revision: https://developer.blender.org/D3155

Commit Details:

Full Hash: fe960a195472a66aed4edb669eed918d88e6476f
Parent Commit: b3e4797
Lines Changed: +1014, -132

62 Modified Paths:

/source/blender/blenkernel/BKE_modifier.h (+131, -9) (Diff)
/source/blender/blenkernel/intern/crazyspace.c (+7, -6) (Diff)
/source/blender/blenkernel/intern/DerivedMesh.c (+3, -3) (Diff)
/source/blender/blenkernel/intern/displist.c (+3, -3) (Diff)
/source/blender/blenkernel/intern/lattice.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/modifier.c (+279, -5) (Diff)
/source/blender/blenkernel/intern/multires.c (+2, -4) (Diff)
/source/blender/editors/object/object_modifier.c (+1, -1) (Diff)
/source/blender/modifiers/intern/MOD_armature.c (+13, -4) (Diff)
/source/blender/modifiers/intern/MOD_array.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_bevel.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_boolean.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_build.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_cast.c (+11, -2) (Diff)
/source/blender/modifiers/intern/MOD_cloth.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_collision.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_correctivesmooth.c (+11, -2) (Diff)
/source/blender/modifiers/intern/MOD_curve.c (+11, -2) (Diff)
/source/blender/modifiers/intern/MOD_datatransfer.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_decimate.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_displace.c (+11, -2) (Diff)
/source/blender/modifiers/intern/MOD_dynamicpaint.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_edgesplit.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_explode.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_fluidsim.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_hook.c (+11, -2) (Diff)
/source/blender/modifiers/intern/MOD_laplaciandeform.c (+11, -2) (Diff)
/source/blender/modifiers/intern/MOD_laplaciansmooth.c (+11, -2) (Diff)
/source/blender/modifiers/intern/MOD_lattice.c (+11, -2) (Diff)
/source/blender/modifiers/intern/MOD_mask.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_meshcache.c (+11, -2) (Diff)
/source/blender/modifiers/intern/MOD_meshdeform.c (+11, -2) (Diff)
/source/blender/modifiers/intern/MOD_meshsequencecache.c (+33, -23) (Diff)
/source/blender/modifiers/intern/MOD_mirror.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_multires.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_none.c (+9, -0) (Diff)
/source/blender/modifiers/intern/MOD_normal_edit.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_ocean.c (+11, -2) (Diff)
/source/blender/modifiers/intern/MOD_particleinstance.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_particlesystem.c (+11, -2) (Diff)
/source/blender/modifiers/intern/MOD_remesh.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_screw.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_shapekey.c (+13, -4) (Diff)
/source/blender/modifiers/intern/MOD_shrinkwrap.c (+11, -2) (Diff)
/source/blender/modifiers/intern/MOD_simpledeform.c (+11, -2) (Diff)
/source/blender/modifiers/intern/MOD_skin.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_smoke.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_smooth.c (+11, -2) (Diff)
/source/blender/modifiers/intern/MOD_softbody.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_solidify.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_subsurf.c (+11, -2) (Diff)
/source/blender/modifiers/intern/MOD_surface.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_surfacedeform.c (+11, -2) (Diff)
/source/blender/modifiers/intern/MOD_triangulate.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_uvproject.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_uvwarp.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_warp.c (+11, -2) (Diff)
/source/blender/modifiers/intern/MOD_wave.c (+11, -2) (Diff)
/source/blender/modifiers/intern/MOD_weightvgedit.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_weightvgmix.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_weightvgproximity.c (+10, -1) (Diff)
/source/blender/modifiers/intern/MOD_wireframe.c (+10, -1) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021