Skip to content

Joint Volume Corrective

Public type: UOverAnimJointCorrectiveModule
Header: OverAnimation/Asset/OverAnimModule.h
Execution Phase: Shape

Purpose

Joint Volume Corrective is a Shape module that corrects surface volume at the inner crease and outer silhouette of a bent joint after strong skeletal or Shape deformation. It does not change the joint hierarchy, and produces correction only when the additional bend angle relative to the reference pose falls within the configured interval.

Details properties

Module ID, Module Name, Enabled, and Order Within Module Phase are hidden by the Details customization. Input Composition is an inherited property exposed in Details.

Simple

UI name C++ property Default · unit · range Effect and interaction
Strength SimpleStrength 1.0, unitless, 0–5 Multiplies authored Maximum Surface Correction by a ratio. It does not change the inside/outside balance.
Sensitivity SimpleSensitivity 1.0, unitless, 0–5 Applies the same inverse ratio to authored Start Additional Bend and Full Additional Bend. 2.0 halves both angles, causing a response at a smaller bend.
Reach SimpleReach 1.0, unitless, 0–5 Multiplies authored Correction Radius by a ratio. Because the radius is the basis for displacement calculation, the affected area and absolute displacement change together.
Focus SimpleFocus 1.0, unitless, 0–5 Multiplies authored Spatial Falloff and Side Selectivity by the same ratio to concentrate the effect around the joint.
Balance SimpleBalance 1.0, unitless, 0–5 Applies a weighted inverse ratio to authored Inside Crease Fill and the same weighted direct ratio to Outside Volume. The weighting makes the increasing-side multiplier reach at 5.0.

Simple values do not modify the Detailed fields. At runtime, the fields above are resolved from authored Detailed values regardless of the current layout.

OverAnim | Joint

UI name C++ property Default · unit · range Effect and interaction
Joint Bone JointBone None The center bone of the bend to correct. It must exist in the Target Skeleton and be inside the resolved Region. If it is missing or outside the Region, the joint chain cannot be resolved and no effect proxy is created.
Parent Bone ParentBone None If unspecified, the immediate skeleton parent of Joint Bone is used. If specified, it must be the immediate parent of Joint Bone and be inside the Region.
Child Bone ChildBone None If unspecified, there must be exactly one direct child of Joint Bone inside the Region. Multiple direct children make the chain ambiguous, requiring an explicit selection. If specified, it must be a direct child of Joint Bone and be inside the Region.

OverAnim | Activation

UI name C++ property Default · unit · range Effect and interaction
Start Additional Bend StartAdditionalBendDegrees 12.0°, 0–179° Correction starts after the current bend exceeds the reference-pose bend by more than this authored angle. The inverse ratio from SimpleSensitivity is always applied to the final angle.
Full Additional Bend FullAdditionalBendDegrees 75.0°, 1–180° Correction reaches full strength when the additional bend reaches this authored angle. The same inverse ratio is applied, and runtime adjusts Full to be no less than Start.

OverAnim | Shape

UI name C++ property Default · unit · range Effect and interaction
Correction Radius CorrectionRadiusRatio 0.35, 0.05–1.0 Authored radius ratio relative to the shorter reference-pose parent/child segment. SimpleReach is always applied to the final value.
Maximum Surface Correction MaximumCorrectionRatio 0.18, 0–1.0 Authored maximum vertex displacement ratio relative to the resolved correction radius. SimpleStrength is always applied to the final value, followed by master effect intensity.
Inside Crease Fill InnerCreaseRelaxation 0.65, 0–2.0 The weighted inverse ratio from SimpleBalance is always applied to the authored inside fill.
Outside Volume OuterBulgeStrength 1.0, 0–2.0 The weighted direct ratio from SimpleBalance is always applied to the authored outside volume.
Spatial Falloff SpatialFalloffExponent 2.0, 0.25–8.0 SimpleFocus is always applied to the authored spatial-profile exponent. Higher values concentrate the effect around the joint.
Side Selectivity SideFalloffExponent 1.5, 0.25–8.0 SimpleFocus is always applied to the authored inside/outside selection-profile exponent.

OverAnim (inherited)

UI name C++ property Default · unit · range Effect
Input Composition CompositionMode Re-Skinning The default set by this module's constructor. Re-Skinning evaluates the module from the current control-point transform.

Execution · Signal · Response scope

Item Behavior
Phase Shape
Signal Not supported.
Response Mode There is no Module Response parameter struct, and the module cannot be a Response Rule target.
Automatic Six-Stage Motion Not compatible. The base automatic-response check rejects it as a module that does not support Signals.
Driver Procedural correction that compares the current joint frame with the reference joint frame each frame.

Response Rule and Signal input

This module does not override SupportsSignals(), so it returns false, and it does not provide GetResponseParameterStruct() either. Consequently, there are no module-specific Details fields corresponding to Module Response at 100% in a Response Rule, and Signal magnitude, direction, and contact data are not used to activate this module.

Safety · performance · validation

  • Chain resolution finds Joint Bone, immediate Parent Bone, and direct Child Bone in both the Target Skeleton and resolved Region. No effect is created if an explicit parent/child does not match the skeleton relationship or lies outside the Region.
  • Parent/child segment lengths in both the current and reference joint frames must be finite and greater than zero. No effect proxy is created if a frame cannot be constructed or the inside direction is zero.
  • No effect proxy is created if Maximum Surface Correction is 0, or if both Inside Crease Fill and Outside Volume are 0.
  • Activation is 0 until the additional bend reaches Start Additional Bend. If Full Additional Bend <= Start Additional Bend, activation becomes 1 as soon as the bend passes Start.
  • Correction Radius is calculated from the shorter reference-pose segment. No effect proxy is created if the radius is nearly zero or non-finite.