Reference Cinema 4D Cinema 4D Visualize, Broadcast, Studio Character Animation Character Component
Function available in CINEMA 4D Studio
Character Component

Basic Tag Insertion Mirroring Include Materials Layers Selection Bind Adjustments Hotspots Notes Animate Walk Python Advanced

Mirroring

When creating multiple components of the same type, the Character object can automatically mirror each subsequent component. This tab defines how components will be mirrored.

Origin Plane

This defines the position and orientation of the plane used as the mirror. A typical left / right mirror for objects facing in the Z direction would be the YZ plane.

Undefined

The Parent's Origin Plane will define the mirror plane. This is useful for limbs like arms and legs because the Origin Plane can be set once in the Spine controller and all child objects will be mirrored around the Spine with the need for additional input.

XY

Will use the Component's XY plane as the Origin Plane.

YZ

Will use the Component's YZ plane as the Origin Plane.

XZ

Will use the Component's XZ plane as the Origin Plane.

Origin

If this link is set, the mirror plane will be determined based on the position and orientation of the object specified in this slot. This allows you to specify a mirror plane other than that of the Component or its Parent.

Auto Mirror

With this option enabled, a template only needs to contain a single side of a mirrored component. The Character object will automatically generate the mirror based on the side provided. For instance, a character template only needs to contain the left side limbs - the right side will be generated automatically by mirroring the left side.

Component

If Auto-Mirror is off you need to specify which component should be created when mirroring this component. The object linked here should have a Component tag applied. The component in this field cannot be built on it's own - it will only be created as a mirror of this Component.

Axes

Various axes modes (each mirrored from right to left).

Use this setting to define which axes will be mirrored, and which one will simply be rotated.

None

The axis will not be mirrored. The axis orientation of the original and mirrored objects remain unchanged.

X-Y
Y-Z
Z-X

The joint’s axis system will be mirrored based on the selection. For example, if XY is selected, then both the X and Y axes will be mirrored. The Z axis will be rotated to accommodate this mirroring.

Rotate

Rotation will take place around the primary axis (for joints this is the Z axis by default, but this can be changed in the Object tab of each joint).

Mirrored from

This attribute will only appear on a built character. If the Component to which the tag is attached was created as a mirror of another Component, the original Component will be linked here. For instance, the Component tag for the Right Arm would indicate that it was Mirrored From the Left Arm.

Freeze

When enabled, the coordinates of all elements within the component will be frozen after mirroring, so that the local coordinates of the object will be zeroed out for easier manipulation and animation.

Set Color

When enabled, the Display Color of each element within the mirrored component will be automatically replaced with the color specified in the tag. This only applies when using Auto Mirror. If manually defining a component it will use the component's colors instead.

Color

This specifies the desired Display Color for all elements of the mirrored component.

Case Sensitive

When enabled, the case of letters specified in the Replace attribute will be considered during automatic renaming of the mirrored elements. For example, with Case Sensitive enabled and "L_” as the Replace attribute, the characters "L_” will be replaced but "l_” will be ignored.

Replace
With

These two text input fields work in a similar way to the search and replace function found in most word processors. When naming the mirrored copies, the tool replaces the text defined within the Replace attribute with the text defined within the With attribute. This function is typically used, for example, to automatically replace the text "L_” at the start of each element's name for the character's left side with the text "R_” to indicate the right side. Therefore, "L_Hand” becomes "R_Hand” when mirrored. If the option Case Sensitive is enabled, the letter case will be taken into consideration.

NOTE:
Unlike other Replace and With fields, the Character object will only replace the first occurrence of the replace string. This is to help prevent cases where you are using l andr as prefixes, and if you tried to replace lshoulder it would then be called rshourder and then the symmetry mapping to that object would be lost.

 Symmetry

These settings allow you to specify how symmetrical components will be identified when the Symmetry option is enabled in Adjust mode of the Character Object. These settings ensure the proper components are symmetrically adjusted.

Type

Component

Component will map the symmetry according to the corresponding component. Generally, you'd use this when the template defines individual components that are mirrored to create left and right side components.

Any

Any will map the symmetry according to the object's mirror position and name (if Match Name is enabled).

Self

Self searches for symmetry within the same component. If for instance you have a single component that brings in both legs, you would want to use Self. In this case, the objects within the component will adjust symmetrically based on the name you have set in the Replace and With fields.

Match Name

Match Name will check the name based on the Replace/With fields.

Tolerance [0..+∞m]

Tolerance sets the amount of tolerance in which to look for mirrored objects. That way if your object is not exactly in the mirrored position you can still adjust them symmetrically.

 Objects

This allows you to make specific exceptions to how certain objects will be mirrored. This can be useful when mirroring UpVector or Aim Constraints, in cases where the mirror plane would cause the constrained object to flip. This section allows you to specify a different mirror axes for such objects.

Add

This button will add a new exception rule.

Remove

This will remove the selected rule.

Object

Link the object which should be mirrored differently than the component.

Axes

Specify the axes of the object that should be mirrored.

None

Don't mirror the linked object.

X-Y
Y-Z
Z-X

Thee linked object's axis system will be mirrored based on the selection. For example, if XY is selected, then both the X and Y axes will be mirrored. The Z axis will be rotated to accommodate this mirroring.