Class PoseNode
Namespace: ValveResourceFormat.Animation
Assembly: ValveResourceFormat.dll
A graph node that produces a pose.
public class PoseNode : GraphNodeInheritance
Derived
AnimationPoseNode, Blend2DNode, ClipReferenceNode, ExternalPoseNode, IDBasedSelectorNode, LayerBlendNode, OrientationWarpNode, ParameterizedBlendNode, ParameterizedSelectorNode, PassthroughNode, ReferencePoseNode, ReferencedGraphNode, SelectorNode, StateMachineNode, StateNode, TargetWarpNode, TimeControlledClipNode, TransitionNode, ZeroPoseNode
Inherited Members
GraphNode.NodeIdx, GraphNode.Instantiate(GraphContext), GraphNode.WasUpdated(GraphContext), GraphNode.MarkNodeActive(GraphContext), GraphNode.IsInitialized, GraphNode.Initialize(GraphContext), GraphNode.Shutdown(GraphContext), GraphNode.InitializeInternal(GraphContext), GraphNode.ShutdownInternal(GraphContext)
Constructors
PoseNode(KVObject)
Reads the PoseNode from its KeyValues3 data.
public PoseNode(KVObject data)Parameters
data KVObject
Properties
CurrentTime
Where the node is, as a percentage through its duration.
public float CurrentTime { get; protected set; }Property Value
float
Duration
The node's duration in seconds.
public float Duration { get; protected set; }Property Value
float
IsValid
Whether the node can produce a pose.
public virtual bool IsValid { get; }Property Value
bool
LoopCount
How many times the node has looped.
public int LoopCount { get; protected set; }Property Value
int
PoseTransforms
This node's output pose buffer, in parent (local bone) space. It is taken from the graph when first used and given back when the node shuts down, so only active nodes hold one.
public FrameBone[] PoseTransforms { get; }Property Value
PreviousTime
Where the node was at the previous update, as a percentage through its duration.
public float PreviousTime { get; protected set; }Property Value
float
SyncTrack
The sync track for this node's timeline; pass-through nodes forward their child's.
public virtual SyncTrack SyncTrack { get; }Property Value
Methods
Initialize(GraphContext, SyncTrackTime)
Initializes an animation node with a specific start time.
public void Initialize(GraphContext ctx, SyncTrackTime initialTime)Parameters
ctx GraphContext
initialTime SyncTrackTime
Initialize(GraphContext)
Activates the node, or adds a reference if it is already active.
public override sealed void Initialize(GraphContext ctx)Parameters
ctx GraphContext
InitializeInternal(GraphContext)
Resets the node state when it becomes active.
protected override sealed void InitializeInternal(GraphContext ctx)Parameters
ctx GraphContext
InitializeInternal(GraphContext, SyncTrackTime)
Resets the node state when it becomes active, starting at the given time.
protected virtual void InitializeInternal(GraphContext ctx, SyncTrackTime initialTime)Parameters
ctx GraphContext
initialTime SyncTrackTime
Instantiate(GraphContext)
Wires child node references and definition-derived state. Runs once for every node in array order at graph construction.
public override void Instantiate(GraphContext ctx)Parameters
ctx GraphContext
Update(GraphContext, SyncTrackTimeRange?)
Advances the node and returns its pose, optionally over a sync track range.
public virtual GraphPoseNodeResult Update(GraphContext ctx, SyncTrackTimeRange? updateRange = null)Parameters
ctx GraphContext
updateRange SyncTrackTimeRange?
Returns
UpdateSourceOrDefault(GraphContext, PoseNode, SyncTrackTimeRange?)
Updates a blend source when it is valid; otherwise it contributes the default pose and no events.
protected static GraphPoseNodeResult UpdateSourceOrDefault(GraphContext ctx, PoseNode source, SyncTrackTimeRange? range)Parameters
ctx GraphContext
source PoseNode
range SyncTrackTimeRange?

