Reference Cinema 4D Cinema 4D Prime Character Menu Weight Manager
Function available in CINEMA 4D Prime, Visualize, Broadcast, Studio & BodyPaint 3D

Commands Joints Weights Auto Weight Options Display

Options

Mirror

Use these options to define the way mirroring will be calculated when using the Mirror + to – or Mirror – to + commands found in the Commands tab of the Weight Manager. These options will affect currently selected joints when running the commands.

The mirror options automatically detect matching Joint influences and assign them as mirror targets. In other words, there is no need to assign a target for the weight mirroring, as the algorithm will automatically find the right joints to apply mirrored weights to. This also allows to mirror the weights of a whole mesh by running a single command and mirror weights on joints that are situated along the mirror plane (mirroring weights for spine joints, for example, which need to mirror themselves along the mirror plane).

Note that all options found under the Joint Options will only affect Joint objects. This algorithm has been designed to work with these objects and will have no impact if other object types (for example, Null, primitive or polygonal objects) are used for the weighting. If other types of objects are used, then only the less accurate Point Options methods will be used for mirroring (the algorithm will try to match mesh points only, in other words).

Space

This section regroups all the options needed to define the mirror plane.

Origin

Defines the position of the mirror plane in the viewport. The following options are available:

Root

Places the mirror plane at the position of the top joint in the hierarchy.

Object

Places the mirror plane at the position of the object selected in the Object link field.

Object

Drag and drop the object to be used as the origin of the mirror plane. Note that the axis of the object will be used.

World

Places the mirror plane at the world origin.

Bind Mesh

Places the mirror plane at the position of the first object whose Weight tag contains weights for the joint objects that are to be mirrored.

Coords

Short for Coordinates. Defines which coordinates system will be used to orient the mirror plane, based on its Origin mode.

World

Uses the World axis coordinates system to orient the mirror plane.

Local

Uses the local object axis coordinates system to orient the mirror plane, as defined by the selected Origin mode (for example, if Object is selected as Origin mode, the plane will be oriented based on the coordinates of that object).

Axis

If World or Local coordinates are selected to orient the mirror plane, this option will become active, enabling you to set the mirror plane axis manually.

X (YZ)

Will mirror along the X axis (YZ plane).

Y (XZ)

Will mirror along the Y axis (XZ plane).

Z (XY)

Will mirror along the Z axis (XY plane).

Point Options

This section is used to determine mirror matching based on the points of the mesh, following various methods.

Point Method

Distance

When matching a point, the tool selects the point that is nearest to the mirrored position within a specified distance (defined by Tolerance).

Nearest

Selects the nearest point to the mirrored position without the limitations of a specified radius.

Surface

Looks for the surface closest to the mirrored position. This could be in the middle of a polygon, in which case the original point's weighting is transferred to the polygon's points.

Normals

Works in a similar fashion to Surface except that a ray is projected from the mirrored position in the direction of the point's normal. The location at which this ray hits the surface is used.

Tolerance [0..+∞m]

This parameter is only available if Search is set to Distance. It defines the radius from the mirrored position within which the tool searches for a matching point.

Joint Options

This section is used to define mirror matching based on joint objects. These options only work in conjunction with joint objects, no other object types that have been weighted to the points.

Pass 1

Defines the method used as the first pass for the Joint influence matching algorithm.

Hierarchical

The mirror function will look for matching hierarchies to run its algorithm on. For example, the left and right leg of a character might share a similar structure (thigh, shin, foot joints). The search function will find a matching parent and mirror influences quickly throughout its hierarchy based on the mirror plane. In case of multiple matches, a second pass might be necessary for this mode to assign influences properly.

Position

This mode searches for the closest position coordinates of the Joints being mirrored, relative to the Mirror Plane.

Tolerance [0..+∞m]

This parameter is only available if Pass 1 or Pass 2 are set to Position. It defines the radius from the mirrored position within which the tool searches for a matching joint position.

Partitioning

This mode expands on the Position mode by providing a dynamic variable position matching based on the density of joints. The closer the joints to be mirrored are, the smaller the search threshold will be, so matching joints can be found more accurately without encompassing incorrect joints. This mode will also increase the search radius for joints that are further apart at the same time, this is why this mode uses percentages (parameter Partitioning Factor), as the search distance can be variable and does not rely on a hard value.

Partitioning Factor [1..200%]

This parameter is only available if Pass 1 or Pass 2 are set to Partitioning. It defines the range of variable threshold to be used and allows an increase or decrease of the proportional search radius for each joint.

Name

This mode leaves the weight matching up to the user, based on naming conventions that may have been followed to find matching joint names on either side of the mirror plane.

Match Case

This option will determine whether or not the name searching is case sensitive.

Left

Defines a specific word to search for that will identify the joints as being on the left side of the mirror plane. For example, the left arm of a character might be named Arm_L. In this case, adding _L to that parameter will ensure that the algorithm identifies this specific joint as being on the left side of the mirror plane.

Right

Defines a specific word to search for that will identify the joints as being on the right side of the mirror plane. If we take the previous cited example, the left arm can easily be matched to the right arm, if the right arm is named Arm_R and we add _R as specific word/letters to look for with this parameter.

Pass 2

If needed, a second pass may be applied to the mirror function to ensure that a match is found. As a general rule of thumb, you will want to use a different mode for this second pass, in case the first pass fails on a few joints using a specific method (for example, using Position as a first pass, with Name as a second pass will ensure that Joints closely matching in position on the mirror plane will be mirrored properly using a specific naming convention as a second criteria).

Off disables the second Pass. The description of the other options can be found under Pass 1 (see above).Pass 1.

Smoothing

The settings in this menu can be used to smooth the entire mesh weighting or only selected points.

Strength [-100..100%]

This setting defines the smoothing strength that affects objects or selected points.

Distance [0..+∞m]

This setting defines how soft the transition between individual joint weighting should be. The larger the value, the softer the transition.

Falloff

This curve deines the shape of the weight falloff over the distance. The left end of the curve represents the starting point of the weighting. The higher the curve progresses, the stronger the weighting will be.

Smooth

Applies the smoothing to the entire object or the selected points.

Interactive

If this option is enabled, the effect of the falloff curve will be displayed interactively in the Viewport. To do so, the Smooth command must be called up once.