tyActor Helper

The tyActor helper can be used to transfer character rigs into tyFlow for use in crowd simulations, in a way that maintains skinning weights, object hierarchies, and keyframed animation of the input objects.

tyActors can import skinned meshes, for transfer into a flow. However, any modifiers added on top of a Skin modifier will be ignored. So, make sure you place any modifiers that you want to affect the mesh under any Skin modifiers (Skin/tyParticleSkin) on the object.


Parameters

  • Actor rig objects: All objects added to this list will be added to the actor, and processed by tyFlow.

  • Simple interpolation: when enabled, subframe data will be interpolated from whole-frame data.

In a lot of actor setups, actor particles will need to process subframe transform data from source tyActors. For example, if an actor particle is animated at 1.25x normal speed, it will need transform data from source tyActor objects that isn’t necessary aligned to whole frames on the timeline (it will need to know tyActor object transform data at frame 1.25 instead of 1.0, for example). Transform data is always cached internally, but if each actor requests different subframe data then the internal cache will have no benefit - even though transform data will get cached for each requested subframe, a situation could easily arise where no two actors request data for the same subframe, meaning the cache won’t actually speed up transform queries. Enabling “simple interpolation” will interpolate whole-frame data when subframe data is requested, meaning the transform cache will get used often (resulting in much faster transform queries).

The downside to enabling “simple interpolation” is that if actual subframe data doesn’t match interpolated subframe data (if the tyActor source objects contain purposeful sub-frame keyframes, for example), then “simple interpolation” could reduce the fidelity of the tyActor animation output. In most cases, “simple interpolation” will not affect animation fidelity and should be left on.

  • Preserve normals: when enabled, existing surface normals will be preserved during the operation.

  • Convert native HI-IK to actor IK: when enabled, IK chain handle objects added to the object list will be imported as actor IK.

Actor IK can collide with IK colliders added to an Actor operator.

  • Import particle nodes: when enabled, nodes which expose the tyParticleInterface (tyFlow/tyCache nodes) will pass their particles directly to the tyActor helper for import.

  • Show icon: controls whether the tyActor icon is displayed in the viewport.

  • Icon size: controls the size of the tyActor icon.

  • Show name: controls whether the tyActor object’s name will be displayed in the viewport.

Animation

  • Animation sequences: a list of sequences added to the tyActor object, for use in the corresponding flow.

  • Sequence name: takes string input for the name of a particular animation sequence being added.

  • Start: the starting frame of the sequence.

  • End: the ending frame of the sequence.

  • Non-skin deformations: controls whether non-skin deformations are to be considered during sequence playback by the corresponding flow (morpher/bend/twist/etc: anything that transforms vertices over time). Turning this on allows users to assign any vertex animation onto the resulting actor particles, not simply skin deformations.

Triggers

Triggers are objects that the oriented bounding boxes of the rig objects can intersect with. If an intersection occurs during the animation clip, corresponding rig particles’ custom data channel will be modified to hold the ‘triggered’ value. When no intersection occurs, the rig particles’ custom data channel will be modified to hold the ‘untriggered’ value.

  • Triggers: the list of trigger objects that the tyActor will use.
Trigger settings
  • Trigger object: the scene object used to perform the intersection test against the rig objects.

  • Channel: the name of the custom data float channel to apply the triggered/untriggered values to.

  • Untriggered: the value that will be assigned to corresponding rig particles when no intersection is occurring.

  • Triggered: the value that will be assigned to corresponding rig particles when an intersection is occurring.

Misc

  • Force biped “in place” mode: this is a workaround to solve the problematic “In Place” mode of character studio bipeds, which does not stay enabled in certain circumstances. This setting will force “In Place” mode to be enabled, prior to rig evaluation by tyFlow.

  • Include unused particles: by default, particles referenced by a tyParticleSkin modifier processed by tyActors will be culled if no vertices are weighted to them. Enabling this setting prevents the particle culling from occurring. All particles referenced by a tyParticleSkin will be imported, even if no skinned vertices are weighted to them.