Node Clip Mesh With Plane and Morph - anticto/Mutable-Documentation GitHub Wiki

Function

This modifier defines a cutting plane on a skeleton bone to cut tagged Materials that go past it, while morphing the mesh after the cut to blend in more naturally. It only cuts and morphs mesh that receives some influence of that bone or other descendant bones.

Use Cases

Cut any of the geometry that passes a certain point with a graceful cutting line, like putting any long pants inside the boots, or putting any upper clothes inside the jeans waist.

Node Properties

This node is a modifier and has all the standard modifier properties. In addition to that, this node has the following properties:

Bone Name (mesh bones dropdown): Defines what bone the node works around. The mesh clip and morph will only modify mesh that receives influence from this bone.

Invert plane normal: Toggle to define if what is cut is what is before or after the cutting ellipse. The default, toggled off, cuts what is past the plane coming from the bone root going towards the other end of the bone (if the plane rotation has not been modified via the gizmo to point backwards).

Morph Start Offset: Location of the morphing plane. The exact meaning of these values depends on the Local Start Offset property.

X: X value of the morph start offset.

Y: Y value of the morph start offset.

Z: Z value of the morph start offset.

Local Start Offset: Toggles between local and global offset, the default being local. The local offset has its origin at the root bone assuming that positive Z means away from the root of the bone towards the other end, following the bone direction as the normal of the Z plane, and it's a mode most useful when modifying the location with the 3D gizmo. The global offset, while also having it's origin at the root of the bone, uses the global coordinate system, with Z pointing up in the preview scene, and it's a mode useful in some cases when setting up the location by writing values directly to the Morph Start Offset property. This is mainly used to setup the node location, and is relevant for both the gizmo and the Morph State Offset property..

Morph length: Distance between the morph plane and the cutting plane. Larger values allow for a more gentle slope and include more geometry in the morph, allowing the property Morph Curve Control to control more vertices. Smaller values make a more clean cut, but also modify the mesh in a shorter space, which may make polygons more obvious. While negative values are accepted, it's better to just move the morphing plane "backwards" and keep a Morph length at zero, for an usability point of view.

Ellipse Radius 1: Radius of the cutting ellipse along the X axis.

Ellipse Radius 2: Radius of the cutting ellipse along the Y axis.

Ellipse Rotation: Rotation in degrees applied to the cutting ellipse.

Morph Curve Control: Controls the morph curve shape in it's path from the morph plane to the cutting ellipse. A value of 1.0 makes it linear, a value greater than 1.0 makes it convex (looks more full), and a value smaller than 1.0 makes it concave (looks more thin).

(WARNING) If the volume between morphing plane and the cutting ellipse does not contain vertices, this effect is not noticeable, as it cannot act on anything. For it to show up, it may be necessary to increase the Morph Length node property and fine tune the morphing plane location or to increase the geometry detail around the morphed area.

(WARNING) The geometry to modify needs to have an influence from the chosen bone. If the need arises to move the plane too far, it is be better to choose a bone closer to the destination to avoid artifacts.

Preview

The editor Preview window will show the planes and ellipse defined in the parameters together with a 3D gizmo that can transform them.

It represents the morphing plane location and rotation, and allows allows modification of its location and rotation. The plane defined is limitless, so its scale can't be changed: the node influence ends only when the mesh is not bound to the chosen bone. It also shows a red circle representing the cutting ellipse that defines the morph destination and the cutting plane, but its shape and distance from the morphing plane are modified through the Node Properties, not here.

Output Pins

Material: A modifier that cuts modified mesh sections with a plane and then morphs nearby mesh according to the parameters.