The constructor of the Component class. When creating a Component, use the createComponent method of the ComponentRepository class instead of directly calling this constructor.
The engine instance
Unique ID of the corresponding entity
Scoped ID of the Component
The instance of the EntityRepository class (Dependency Injection)
Whether this component is being reused from a pool
Protected__Protected__Protected__the instance of EntityRepository
Protected__the entity unique Id which this component belongs to
Protected__Protected__the instance of MemoryManager
Collection of tags associated with this object
Static Readonly_StaticcurrentCurrent maximum object count for UID generation
Static ReadonlyEventStatic ReadonlyInvalidInvalid object UID constant
Gets the ComponentMemoryRegistry for this component's engine.
Gets the current animation blending ratio.
The blending ratio value between 0 and 1
Sets the animation blending ratio and applies the animation.
The blending ratio value between 0 and 1
Gets the Scoped ID of this Component instance. The SID is unique within the component type and represents the instance index.
The component scoped ID
Gets the component type identifier for this instance.
The component type identifier
Gets the current process stage of the component. This determines which update methods are currently being called.
The current process stage
Gets the entity that owns this animation component.
The entity which has this component
Gets the unique ID of the entity that owns this component.
The entity unique ID
Gets whether this component is currently animating.
True if animating, false otherwise
Gets the unique object identifier
The object's UID
Gets the unique name of this object
The unique name string
StaticcomponentGets the component type identifier for AnimationComponent.
The component type identifier
InternalCopies tag data from another RnObject instance to this object
The source RnObject to copy tags from
Destroys this component, cleaning up resources and clearing animation data.
Performs a shallow copy of another animation component's data into this component.
The source animation component to copy from
Component load lifecycle method. Moves the component to the Logic process stage.
Component logic lifecycle method. Applies animation if animation is enabled.
When multiple VRM models share the same skeleton (joint entities), animation calculations only need to be performed once per frame. This optimization works by checking if the SkeletalComponent's skinning cache will be used for this entity.
The optimization flow:
This significantly reduces CPU overhead when many VRM models share the same skeleton.
Adds a keyframe to the specified animation track at the given frame.
The name of the animation track
The name of the animation path
The frame number where to insert the keyframe
The frames per second rate
True if the keyframe was successfully added, false otherwise
Adds a keyframe with a specific value to the specified animation track at the given frame.
The name of the animation track
The name of the animation path
The frame number where to insert the keyframe
The array of output values for the keyframe
The frames per second rate
True if the keyframe was successfully added, false otherwise
Adds this animation component to an entity, extending the entity with animation methods.
The target entity to add this component to
The component class to add
The entity extended with animation component methods
Deletes keyframes at the specified frame for the given animation track and path.
The name of the animation track
The name of the animation path
The frame number where to delete keyframes
The frames per second rate
True if keyframes were successfully deleted, false otherwise
Gets the animated value for the specified animation path.
The name of the animation path
The animated value or undefined if not found
Gets the animation channels of the animation track.
The channel maps of the animation track
Gets all animation track names associated with this component.
An array of animation track names
Gets the end input time value for the specified animation track.
The name of the animation track
The maximum end input time value
Gets the start input time value for the specified animation track.
The name of the animation track
The minimum start input time value
Retrieves a complete tag object (name and value) for the specified tag name
The name of the tag to retrieve
A Tag object containing the name and value
Retrieves the value associated with a specific tag name
The name of the tag whose value to retrieve
The tag value, or undefined if the tag doesn't exist
Checks if this component has a specific animation for the given track and path.
The animation track name to check
The animation path name to check
True if the animation exists, false otherwise
Checks if keyframes exist at the specified frame for the given animation track and path.
The name of the animation track
The name of the animation path
The frame number to check
The frames per second rate
True if keyframes exist at the frame, false otherwise
Checks whether this object has a tag with the specified name
The name of the tag to check for
True if the tag exists (value is not null/undefined), false otherwise
Checks whether the specified ProcessStage method exists in this Component instance. This is used to determine if this component can handle a particular process stage.
The process stage to check for
True if the method exists, false otherwise
Checks if this object has a tag with the specified name and value
The tag name to match
The tag value to match
True if the object has a matching tag, false otherwise
Checks if this object has all the specified tags with exactly matching values
Object containing tag names as keys and expected values
True if all specified tags exist with matching values, false otherwise
Checks if the object's combined tag string contains all the provided search strings. This allows for flexible searching within tag names and values.
Array of strings that must all be present in the combined tag string
True if all strings are found in the combined tag string, false otherwise
Transitions the component to a different process stage. This affects which update methods will be called during the frame processing.
The target stage to move to
Registers a dependency relationship with another component. This method is intended for future use in managing component dependencies.
Removes a tag from this object
The name of the tag to remove
Resets a specific animation track by removing its animation sampler data.
The name of the animation track to reset
Resets all animation tracks that have names ending with the specified postfix.
The postfix to match against track names
Resets all animation tracks, clearing all animation data from this component.
Sets the active animation track for this component.
The name of the animation track to activate
Sets an animation channel for the specified path. If a channel already exists for the path, it merges the new animation data with the existing one.
The name of the animation path (e.g., 'translate', 'rotate', 'scale')
The animated value containing animation data
Sets whether this animation component is animating.
True to enable animation, false to disable
Sets the second active animation track for blending purposes.
The name of the second animation track to activate
Allocates memory for all member fields of this component instance. This method is called during component initialization to set up memory layout and allocate space for the specified number of entities.
The number of components per buffer view
Whether to reuse existing memory allocations
Attempts to set a tag on this object. If the tag already exists, it will be replaced.
The tag object containing the name and value to set
True if the tag was successfully set, false if the tag name contains invalid characters
Attempts to set a unique name for this object
The desired unique name
If true, appends UID to make name unique when conflicts occur; if false, fails on conflict
True if the name was successfully set, false if there was a conflict and toAddNameIfConflict was false
Unregisters this object from all tracking collections. Should be called when the object is being destroyed.
Validates that a tag string contains only allowed characters (alphanumeric and underscore)
The string to validate
True if the string contains only valid characters, false if it contains invalid characters
Static_InternalCleans up static resources associated with the specified engine.
The engine instance to clean up resources for
Static_InternalResets all static object tracking data. Used primarily for testing.
StaticdoesChecks whether the specified ProcessStage method exists in the given Component class. This is used to determine if a component can handle a particular process stage.
The component class to check
The process stage to check for
True if the method exists, false otherwise
StaticgetGets the animation global info map for a specific engine. Creates a new map if one doesn't exist for the engine.
The engine instance to get the animation info for
The animation global info map for the engine
StaticgetGets the animation information for all tracks.
The engine instance to get the animation info for
A map containing animation track names and their corresponding information
StaticgetGets an array of all available animation track names.
The engine instance to get the animation list for
Array of animation track names
StaticgetStaticgetStaticgetGets the ComponentType of a specific member field in a component class. This is useful for understanding the primitive data type of component members.
The ComponentType of the member or undefined if not found
StaticgetGets the CompositionType of a specific member field in a component class. This is useful for understanding the data structure of component members.
The CompositionType of the member or undefined if not found
StaticgetGets the global end input value for all animation components.
The engine instance to get the end input value for
The end input value
StaticgetGets the global animation time for the specified engine.
The engine instance to get the global time for
The global animation time for the engine, defaults to 0 if not set
StaticgetGets the animation state for the specified engine.
The engine instance to get the animation state for
True if animation is enabled for the engine, defaults to true if not set
StaticgetGets the pixel location offset in the buffer for a specific member of a component type. This is useful for GPU texture-based data access where locations are measured in pixels.
The pixel location offset in the buffer
StaticgetGets the member info of the component. This is useful for getting the member info of the component.
The member info of the component
StaticgetRetrieves an RnObject instance by its unique identifier
The unique identifier of the object to retrieve
The RnObject instance or undefined if not found or garbage collected
StaticgetRetrieves an RnObject instance by its unique name
The unique name of the object to retrieve
The RnObject instance or undefined if not found or garbage collected
StaticgetGets the global start input value for all animation components.
The engine instance to get the start input value for
The start input value
StaticgetGets the state version of the component memory layout. This is incremented whenever the component's memory layout changes.
The engine instance
The state version number
StaticprocessProcesses all components of a given type for a specific process stage. This method iterates through all components of the specified type and calls their corresponding process stage method if they are in that stage.
The component class to process
The process stage to execute
StaticregisterRegisters a member field of the component class for memory allocation. This method defines the memory layout and characteristics of component data members.
The intended purpose/type of buffer use
StaticsearchSearches for the first object that has a specific tag with the given value
The tag name to search for
The tag value to match
WeakRef to the first matching object, or undefined if not found
StaticsetSets the active animation track for all animation components.
The name of the animation track to activate
StaticsetSets the global animation time for the specified engine.
The engine instance to set the global time for
The global animation time in seconds
StaticsetSets the animation state for the specified engine.
The engine instance to set the animation state for
True to enable animation, false to disable
StaticsubscribeSubscribes to animation component events.
The type of event to subscribe to
The event handler function
StaticupdateUpdates components specifically for the render stage with render pass context. This method calls the sort_$render method of the component class to handle render-specific processing and sorting.
The component class to update
The current render pass context
The result of the sort_$render method
A component that manages animation data and applies animation transformations to entities. This component handles various types of animations including transform, blend shape, material, light, camera, and Effekseer particle system animations.