Handle COMP
Summary[edit]
The Handle Component is a new IK tool designed for manipulating groups of bones. Whereas the previous IK tools only allowed for a single end-affector per bone chain, this new method allows for several end-affectors per bone. Furthermore, the bones need not be a chain. Any setup, including branches, are handled.
One typical example is the use of motion capture data. In higher-end systems, you could have a cloud of marker positions and a skeleton to be driven by it.
This Handle Component works in tandem with the Handle CHOP. The following setup is commonly used: Given a hierarchy of bones, attach one or more Handle Components to specific locations on each Bone Component. Assign each handle a target in space to follow. Create a Handle CHOP which collects this information and calculates the rotation channels for the bones. Export these values back to the bones.
Parameters - Handle Page
Target target
- Where the Handle will pull the bone towards (like an end-affector).
Translate t
- ⊞ - Displacement tx,ty,tz relative to the origin of the bone where the handle is anchored.
- X
tx
-
- Y
ty
-
- Z
tz
-
Weight weight
- When multiple handles are attached to a bone, higher weighted handles draw closer to their target.
Twist Only twistonly
- When enabled the handle only contributes the the z rotation of the bone, when disabled it points the bone (rx, ry, and rz).
Falloff falloff
- This value affects how much parent bones are affected when the child bone is reaching a target. It affects the flexibility of the chain.
Rotation Limits X dorxlimit
- These affects how much the bone is allowed to rotate with respect to its parent.
Limit X lrx
- ⊞ - Set the minimum and maximum rotation range in X axis.
lrxmin
-
lrxmax
-
Rotation Limits Y dorylimit
- These affects how much the bone is allowed to rotate with respect to its parent.
Limit Y lry
- ⊞ - Set the minimum and maximum rotation range in Y axis.
lrymin
-
lrymax
-
Rotation Limits Z dorzlimit
- These affects how much the bone is allowed to rotate with respect to its parent.
Limit Z lrz
- ⊞ - Set the minimum and maximum rotation range in Z axis.
lrzmin
-
lrzmax
-
Parameters - Render Page
The Display parameter page controls the component's material and rendering settings.
Material material
- Selects a MAT to apply to the geometry inside.
Render render
- Whether the Component's geometry is visible in the Render TOP. This parameter works in conjunction (logical AND) with the Component's Render Flag.
Draw Priority drawpriority
- Determines the order in which the Components are drawn. Smaller values get drawn after (on top of) larger values.
Pick Priority pickpriority
- When using a Render Pick CHOP or a Render Pick DAT, there is an option to have a 'Search Area'. If multiple objects are found within the search area, the pick priority can be used to select one object over another. A higher value will get picked over a lower value. This does not affect draw order, or objects that are drawn over each other on the same pixel. Only one will be visible for a pick per pixel.
Wireframe Color wcolor
- ⊞ - Use the R, G, and B fields to set the Component's color when displayed in wireframe shading mode.
- Red
wcolorr
-
- Green
wcolorg
-
- Blue
wcolorb
-
Light Mask lightmask
- By default all lights used in the Render TOP will affect geometry renderer. This parameter can be used to specify a sub-set of lights to be used for this particular geometry. The lights must be listed in the Render TOP as well as this parameter to be used.
Parameters - Extensions Page
The Extensions parameter page sets the component's python extensions. Please see extensions for more information.
Re-Init Extensions reinitextensions
- Recompile all extension objects. Normally extension objects are compiled only when they are referenced and their definitions have changed.
Extension Object 1 extension1
- A number of class instances that can be attached to the component.
Extension Name 1 extname1
- Optional name to search by, instead of the instance class name.
Promote Extension 1 promoteextension1
- Controls whether or not the extensions are visible directly at the component level, or must be accessed through the .ext
member. Example: n.Somefunction
vs n.ext.Somefunction
Info CHOP Channels
Extra Information for the Handle COMP can be accessed via an Info CHOP.
Common COMP Info Channels
- num_children - Number of children in this component.
Common Operator Info Channels
- total_cooks - Number of times the operator has cooked since the process started.
- cook_time - Duration of the last cook in milliseconds.
- cook_frame - Frame number when this operator was last cooked relative to the component timeline.
- cook_abs_frame - Frame number when this operator was last cooked relative to the absolute time.
- cook_start_time - Time in milliseconds at which the operator started cooking in the frame it was cooked.
- cook_end_time - Time in milliseconds at which the operator finished cooking in the frame it was cooked.
- cooked_this_frame - 1 if operator was cooked this frame.
- warnings - Number of warnings in this operator if any.
- errors - Number of errors in this operator if any.
TouchDesigner Build:
COMPs |
---|
• • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • |