ezEngine Release 26.3
Loading...
Searching...
No Matches
ezAnimGraphPin Class Referenceabstract

#include <AnimGraphPins.h>

Inheritance diagram for ezAnimGraphPin:

Public Types

enum  Type : ezUInt8 {
  Invalid , Trigger , Number , Bool ,
  BoneWeights , LocalPose , ModelPose , ENUM_COUNT
}
 

Public Member Functions

bool IsConnected () const
 
virtual ezAnimGraphPin::Type GetPinType () const =0
 
ezResult Serialize (ezStreamWriter &inout_stream) const
 
ezResult Deserialize (ezStreamReader &inout_stream)
 
- Public Member Functions inherited from ezReflectedClass
virtual const ezRTTIGetDynamicRTTI () const
 
bool IsInstanceOf (const ezRTTI *pType) const
 Returns whether the type of this instance is of the given type or derived from it.
 
template<typename T >
EZ_ALWAYS_INLINE bool IsInstanceOf () const
 Returns whether the type of this instance is of the given type or derived from it.
 

Protected Attributes

ezInt16 m_iPinIndex = -1
 Index into the instance's pin state array, -1 if unconnected.
 
ezUInt8 m_uiNumConnections = 0
 Number of connections to this pin.
 

Friends

class ezAnimGraph
 

Additional Inherited Members

- Static Public Member Functions inherited from ezNoBase
static const ezRTTIGetStaticRTTI ()
 

Detailed Description

Base class for all animation graph pins, representing typed connections between nodes.

Pins are the connection points on nodes that allow data to flow through the graph. Each pin has a type (trigger, number, bool, pose, etc.) and can be either an input or output. Pins are connected in the graph editor to define data flow.

Pin Indices

During graph preparation, each pin is assigned an index (m_iPinIndex) that identifies its storage location in the instance data arrays. Unconnected pins have index -1 and return default values.

Data Flow

Output pins write values to the instance's pin state arrays, input pins read from those arrays. The mapping from output pin indices to input pin indices is pre-computed during PrepareForUse().

Pin Types

  • Trigger: One-shot events (animation finished, state entered)
  • Number: Floating-point values for blend weights, speeds, parameters
  • Bool: Boolean flags and conditions
  • BoneWeights: Masks controlling which bones are affected by animations
  • LocalPose: Bone transforms in local space (parent-relative)
  • ModelPose: Bone transforms in model space (skeleton root-relative)

Member Enumeration Documentation

◆ Type

enum ezAnimGraphPin::Type : ezUInt8
Enumerator
Trigger 

One-shot events that occur for a single frame.

Number 

Double-precision floating-point values.

Bool 

Boolean true/false values.

BoneWeights 

Masks controlling bone influence.

LocalPose 

Bone transforms in local space.

ModelPose 

Bone transforms in model space.

Member Function Documentation

◆ IsConnected()

bool ezAnimGraphPin::IsConnected ( ) const
inline

Returns whether this pin is connected to another pin.

Unconnected pins have index -1 and return default values when queried.


The documentation for this class was generated from the following files: