tyConform Modifier

The tyConform modifier allows you to conform the surface of one piece of geometry to another.


Target Objects

  • Target Objects: the list of objects to which the input surface will be conformed.

Conform

  • Closest Surface: vertices of the input surface will conform to the nearest surface in the target objects list.

  • Expandwrap: vertices of the input surface will conform to the nearest hit point of a ray cast from the pivot of the nearest target object to each vertex.

  • Shrinkwrap: vertices of the input surface will conform to the nearest hit point of a ray cast from each vertex to the pivot of the nearest target object.

  • Raycast: vertices of the input surface will conform to the nearest hit point of a ray cast along a user-defined vector.

  • Matching Vertex ID: vertices of the input surface will conform to the matching vertex (by ID) of the nearest object in the target objects list.

  • Temporal: vertices of the input surface will conform to the target object relative to their initial offset at a specified frame.

Temporal conform mode measures the offset a particular vertex has to a target surface at a specified frame and then transforms the vertex by that offset to the target surface at the current frame. It is similar to how the Skin Wrap modifier works, except that it will remain consistent even if the input surface’s topology changes. So you could, for example, temporally conform the geometric result of an evolving particle system to a moving surface.

  • Position Transfer: vertices of the input surface will conform to the position target object relative to their initial offset from the base target object.

For position transfer to work correctly, the number of objects in the base target object list should be the same as the number of objects in the position target object list, and their face/vertex counts should match (in order). The purpose of the position transfer mode is to transfer a mesh from one surface to its relative offset from a different surface with identical topology.

  • Volume: vertices of the input surface will conform to the nearest surface in the target objects list, retaining their offset from the surface based on their initial distance to the plane of the sub-object gizmo.

The Volume mode of the tyConform modifier allows you to conform meshes to surfaces while maintaining their volume. In order to maintain the volume of one mesh when conformed to another, an initial relative resting state is required. But how can that be calculated when input geometry is completely arbitrary? That’s where the sub-object gizmo comes in - you can use the sub-object gizmo to define a “baseline”, which is a flat plane from which each vertex of the input mesh will have its offset calculated. Then, implicitly during the conform operation, each point is conformed to that plane and then conformed to the target surface. After being conformed to the target surface, each point is then offset from the surface the same distance they were offset from the plane - allowing the volume of the resulting mesh to be maintained (to a degree). The orientation of that sub-object gizmo, relative to the surface, is important…however, you can enable “pre-align mesh to surface” to have tyConform do some internal alignments which can improve the result.

  • Amount %: the amount to conform the input surface to the target surface.

  • Offset: the offset from the target surface to apply the conform.

  • Use vertex selection: only selected vertices will be conformed (soft-selections are allowed).

Element Matching

  • None: disables element matching.

  • One element per element: when enabled, each element of the input surface will conform to only a single element of any mesh in the target objects list. This helps to reduce stretching artifacts, when vertices of a single input element conform to different elements of the target object list due to natural differences in their proximity. This setting is most useful when both input meshes and meshes in the target object list contain many different small elements.

Distance Affect

  • Distance: vertices within this distance to the target surface will be fully affected.

  • Falloff: the effect on vertices beyond the base distance to the target surface, but within this falloff distance, will diminish according to the inverse-square law.

Affect

  • Vertices: the conform operation will affect input surface vertex positions.

  • Material IDs: the conform operation will affect input surface material IDs.

  • Normals: the conform operation will affect input surface vertex normal directions.

  • UVWs: the conform operation will affect input surface UVW coordinates.

  • All/specific channels: controls whether UVW inheritance will affect all mapping channels or only a specific channel.

  • Channel: the specfic mapping channel to target.

Misc

  • Rebuild normals: when enabled, face and vertex normals will be rebuilt (explicit normals will be cleared).

If a mesh with explicit normals undergoes enough deformation during the conform operation, faces may appear darker/black due to normals now pointing in the wrong direction. Enable the “rebuild normals” option to clear explicit normals after the conform operation, which will fix black face artifacts.


Relax Rollout

Relaxation

  • Enable relaxation: when enabled, each conform operation will be followed by a mesh relaxation step, which itself will be followed by a final conform operation. Enabling mesh relexation can help to smooth out surfaces over their conform target meshes.

  • Amount: the amount of mesh relaxation to apply during each mesh relaxation step.

  • Iterations: the number of mesh relaxation steps to apply.


Raycast Rollout

Raycast Direction

  • Vertex normals: the raycast rays will be cast along vertex normals.

  • Vert to self pivot: the raycast rays will be cast from the location of each vertex to the pivot of the source object.

  • Absolute: the raycast rays will be cast along the vector defined by the X/Y/Z values.

  • Object z-axis: the raycast rays will be cast along the local z-axis of a specified object.

  • Object: the object whose z-axis will cast the rays.

  • X/Y/Z: the coordinates of the user-defined vector to use as the raycast direction for Raycast mode.

  • Reverse direction: reverses the direction of the raycast rays.

Ray Origin Offset

  • X/Y/Z: offset values to apply to each vertex’s raycast origin point.

Closest Surface Rollout

Sample

  • Sample: controls which sampler will be used for surface proximity tests.

Volume Rollout

  • Sample type: controls how points on the target surface are sampled - either by closest point, or raycast.

  • Unify normals: specifies an interpolation amount between 0-1, used to blend collected normals together. A value of 0 means each point will be offest from the target surface using the closest normal of the surface. A value of 1 means each point will be offset from the target surface using the average of all sampled surface normals.

  • Use gizmo dir: specifies an interpolation amount between 0-1, used to blend between collected normals and the sub-object gizmo direction. A value of 0 means the gizmo direction is not used to offset points. A value of 1 means all points will be offset only along the gizmo direction.

  • Pre-align mesh to surface: when enabled, the input mesh (and sub-object gizmo) are implicitly aligned to the closest point on the surface prior to the volume conform operation, allowing for better volume preservation in many cases. When this mode is enabled, the implicit gizmo icon will also be drawn in the view, so the new alignment can be visualized.

  • Snap gizmo to local Z-min: pressing this button will move the sub-object gizmo to the base of the mesh (the lowest point) relative to the gizmo’s local Z-axis. This can quickly establish a proper volume conform baseline on meshes where the gizmo is offset from the lowest point on the mesh.