MorphTarget ShapeBlender Modifier

提供: wiki
移動先: 案内検索

MorphTarget_ShapeBlender_Modifier

About

The MorphTarget (codename) modifier's real purpose is to let artists use an actual mesh as a morph target so that the user does not rely on implicit shape keys data structures. The shape keys are very useful, however due to their exotic existence they do not give the user much play room. For example, it is harder to merge your changes to your initial mesh in a situation where you take your mesh to another app to make some changes and bring it back (MTM is more elegant). Another issue is that shape keys are not visible to the users unless the user selects them and adjusts the factors. The workarounds are more cumbersome than using MTM. This modifier anticipates to free the user from most of those restrictions that the shape key system forces on the user experience.

One of the most important aspects of having a separate morph modifier is that,unlike the shape keys, it can be stacked in the modifier list. The shape keys' deformation happens before anything else, therefore the user has no control over when the morphing should occur.

Links

Old forum link: http://blenderartists.org/forum/showthread.php?286279-Morph-to-target-mesh-modifier-is-ready-for-testing

New forum link: http://blenderartists.org/forum/showthread.php?337131-Updated-Morph-Target-Modifier-by-kkar&p=2648907

Patch page: http://projects.blender.org/tracker/index.php?func=detail&aid=34635&group_id=9&atid=127


Terminology

   MTM         > Morph Target Modifier
   Source_A    > The item that has the MTM
   Target_B    > The item that Source_A morphed into

What Morph Target Modifier is not

   This is not a replacement for shapekeys.
   MTM does not attempt to limit or interfer with the shape key functionality.
   MTM is not trying to duplicate functionality, rather it is trying to take advantage of other ideas in Blender.
   MTM is not a general purpose shape shifter (it does not handle arbitrary topology atm).
   MTM does not hold/create special data to do morphing. It merely calculates morph vectors on the fly.

Why use Morph Target Modifier

   These are not the only cases where it is useful, however I am listing the most important and the main advantages over the shape keys here.
   MTM is listed in the modifier stack, so it can be repositioned in the stack, while shape keys happen before anything else.
   Not only it can be stacked in the modifiers, it can also use the calculated vertex positions from the previous modifiers.
   Therefore it effectively supersedes shapes if needed in such cases. On the other hand, the shape keys can only be used against the original mesh data. The deformers are discarded naturally. 
   This is optional and can be selected in the panel (use_modified flag).
   MTM can also use the modifiers data from Target_B, which means that it uses the final derived mesh for its purposes.
   For example, you can apply other deformers like armatures/displacement on Target_B and get that to be the target morph data.
   One of the places this is very handy is when you want to modify your item in another program (like Zbrush) and bring back the resulting mesh and merge your changes. While there are other ways
   to achieve similar things in Blender, I have found this way to be the most convenient for my needs.
   MTM lets you treat your morph targets more like a palette. Once you have all your target meshes, you can mix and merge changes from different parts of those meshes  or full parts from them into your original.
   Mesh item using weights and morphing.
   The shape keys are implicit and you generally cannot see all at once. There are ways to achieve that, however I believe that MTM way is the most elegant in this case. 
   MTM can be put in any position the modifier stack, but because there is no artbitrary topology matching it is not a good idea to use the remesh modifier with it.
   MTM can be used for corrective morphing in a limited way with rigs (because it does not understand the pose space at this point). This is planned.
   Finally like all the other modifiers, you can turn your resulting mesh data into shapekeys if you want. So it is a great complement to underlying shape key workflow.

What are the planned features

   Arbitrary topology matching
   Pose space morphing for corrective shaping/sculpting for rigging purposes 
   Vertex Color, Vertex Weight and other mesh data morphing (Morphing one meshes vertex colors to anothers, like blending)
   Non linear blender, ie slerp 
   Sculpt morphing to see the changes in realtime on Source_A (if we can get depgraph flag updates when in th sculpt mode). At the moment one has to manually update, ie some ui changes.


Roadmap

Tasks

[DONE] [FEEDBACK] The modifier should be aware of the target mesh`s mesh state (does it have modifiers applied, is it animated etc)


[INPROGRESS] Maybe carry over vertex/ polygon properties (weights, edge values etc) as well so it is not just shape transformer


[DONE] [FEEDBACK] Bug cleanup.


[DONE] [FEEDBACK] Real time updating of the source when the target is in Sculpt mode. So you can sculpt the target and see the results on the source (one with the modifier)


[FEATURE] Topologically aware morphing


[FEATURE] Corrective morphing with bone space deformations


[FEATURE] Add vertex color morphing


Bugs

suzanne morph