Page MenuHomeAnticto

Mutable for Unreal Engine 4 | Clip Morph Mesh Node
Updated 460 Days AgoPublic

image.png (75×159 px, 10 KB)


Function

Defines a cutting plane on a 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

Have the option to 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

image.png (451×349 px, 30 KB)
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.
Tags (array): Tags defined by this material modification. Any Material Node that defines any of these tags, also receives the material morph and removal when the Customizable Object this node is connected to is active.
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).

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.

image.png (492×448 px, 229 KB)
(3D gizmo): 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.

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.

Output Pins

Material: Material modifier that activates with the Customizable Object it is connected to, but cuts any Material in any customizable object in the same hierarchy that has any of the same tags defined. This modifier morphs any affected mesh past the morphing plane to target the cutting ellipse, and deletes any face that is fully past the cutting ellipse, along with any dangling edges and vertices left after the face deletion.

Last Author
ricard
Last Edited
Jun 17 2020, 12:02 PM

Event Timeline

ricard published a new version of this document.
ricard changed the visibility from "All Users" to "Public (No Login Required)".