Clutter Engine 0.0.1
Loading...
Searching...
No Matches
clt::FlipbookComponent Class Reference

Component for handling flipbook-style sprite animations. More...

#include <FlipbookComponent.h>

Inheritance diagram for clt::FlipbookComponent:
clt::SpriteComponent clt::Component clt::AnimatorComponent Dir8Sprite

Public Member Functions

 FlipbookComponent (const std::vector< Texture * > &pTexture, bool pLooping=true, int pDrawOrder=100)
 Constructs a FlipbookComponent with the given textures, looping option, and draw order.
 
 FlipbookComponent ()=delete
 Deleted default constructor.
 
 FlipbookComponent (const FlipbookComponent &)=delete
 Deleted copy constructor.
 
FlipbookComponentoperator= (const FlipbookComponent &)=delete
 Deleted copy assignment operator.
 
virtual ~FlipbookComponent ()
 Destructor.
 
virtual void SetOwner (Actor *pOwner) override
 Sets the owner actor for this component and initializes the texture.
 
float GetFlipbookFps () const
 Gets the current animation frame rate (FPS).
 
void SetFlipbookTextures (const std::vector< Texture * > pTextures)
 Sets the textures used for the flipbook animation.
 
void SetFlipbookFps (float pFps)
 Sets the animation frame rate (FPS).
 
void SetLooping (bool pLooping)
 Sets whether the animation should loop.
 
std::vector< Texture * > GetFlipbookTextures () const
 Gets the textures used for the flipbook animation.
 
bool GetLooping () const
 Checks if the animation is set to loop.
 
void Play ()
 Starts or resumes the animation.
 
void Pause ()
 Pauses the animation.
 
void Toggle ()
 Toggles the paused state of the animation.
 
void Update () override
 Updates the animation frame. Should be called every frame.
 
- Public Member Functions inherited from clt::SpriteComponent
 SpriteComponent (Texture *pTexture, int DrawOrder=0)
 Constructs a SpriteComponent with the given texture and draw order.
 
 SpriteComponent ()=delete
 
 SpriteComponent (const SpriteComponent &)=delete
 
SpriteComponentoperator= (const SpriteComponent &)=delete
 
virtual ~SpriteComponent ()
 Destructor. Removes this component from the renderer if it has an owner.
 
virtual void SetTexture (Texture *pTexture)
 Sets the texture for this sprite.
 
virtual void SetTexture (const std::string &pTexture)
 Sets the texture for this sprite by name or path.
 
void SetFlipX (bool pFlip)
 Sets whether the sprite is flipped horizontally.
 
void SetFlipY (bool pFlipY)
 Sets whether the sprite is flipped vertically.
 
bool GetFlipX () const
 Gets whether the sprite is flipped horizontally.
 
bool GetFlipY () const
 Gets whether the sprite is flipped vertically.
 
int GetTexWidth () const
 Gets the width of the texture.
 
int GetTexHeight () const
 Gets the height of the texture.
 
TextureGetTexture () const
 Gets the texture used by this sprite.
 
- Public Member Functions inherited from clt::Component
 Component (int pUpdateOrder=0)
 Constructor for Component.
 
virtual ~Component ()=default
 Virtual destructor for Component.
 
virtual void Start ()
 Called when the component is started.
 
virtual void Destroy ()
 Called to destroy the component.
 
void SetActive (bool pActive)
 Enables or disables the component.
 
void OnDestroy ()
 Called when the component is destroyed.
 
bool IsActive () const
 Checks if the component is enabled.
 
int GetUpdateOrder () const
 Gets the update order of the component.
 
void SetRelativeLocation (const Vector3 &loc)
 Sets the relative location of the component.
 
void SetRelativeLocation (const Vector2 &loc)
 Sets the relative location of the component.
 
void SetWorldLocation (const Vector3 &loc)
 Sets the world location of the component.
 
void SetRelativeScale (const Vector3 &scale)
 Sets the relative scale of the component.
 
void SetRelativeScale (const Vector2 &scale)
 Sets the relative scale of the component.
 
void SetRelativeRotation (Quaternion rot)
 Sets the relative rotation of the component.
 
void SetRelativeRotation (Vector3 rot)
 Sets the relative rotation of the component.
 
void SetWorldRotation (const Quaternion &rot)
 Sets the world rotation of the component.
 
void SetWorldRotation (const Vector3 &rot)
 Sets the world rotation of the component.
 
void AddRelativeRotation (Vector3 rot)
 Adds a rotation to the current relative rotation.
 
void SetRelativeRotation (float rot)
 Sets the relative rotation of the component.
 
void SetRelativeTransform (Transform &transform)
 Sets the relative transform of the component.
 
Vector3 GetRelativeLocation () const
 Gets the relative location of the component.
 
Vector3 GetRelativeScale () const
 Gets the relative scale of the component.
 
Quaternion GetRelativeRotation () const
 Gets the relative rotation of the component.
 
Vector3 GetRelativeRotationEuler () const
 Gets the relative rotation of the component as Euler angles.
 
Transform GetRelativeTransform () const
 Gets the relative transform of the component.
 
Vector3 GetWorldLocation () const
 Gets the world location of the component.
 
Vector3 GetWorldScale () const
 Gets the world scale of the component.
 
Quaternion GetWorldRotation () const
 Gets the world rotation of the component.
 
virtual Transform GetWorldTransform () const
 Gets the world transform of the component.
 
ActorGetOwner () const
 Gets the owner actor of this component.
 

Additional Inherited Members

- Public Attributes inherited from clt::Component
friend Actor
 
- Protected Member Functions inherited from clt::Component
bool LineTrace (Vector3 start, Vector3 direction, float maxDistance, raycastHit &hit, bool debugPersistant=false)
 Performs a line trace (raycast) using the owning actor.
 
- Protected Attributes inherited from clt::SpriteComponent
int mTexWidth
 
int mTexHeight
 
bool mFlipX
 
bool mFlipY
 
TexturemTexture
 
- Protected Attributes inherited from clt::Component
bool mIsActive = true
 Indicates if the component is active.
 
int mUpdateOrder = 0
 The order in which the component is updated.
 
ActormOwner
 The actor that owns this component.
 
Transform mRelativeTransform
 The relative transform of the component to its owner.
 

Detailed Description

Component for handling flipbook-style sprite animations.

FlipbookComponent manages a sequence of textures to create animated sprites. It supports looping, pausing, and custom frame rates.

Constructor & Destructor Documentation

◆ FlipbookComponent()

FlipbookComponent::FlipbookComponent ( const std::vector< Texture * > & pTexture,
bool pLooping = true,
int pDrawOrder = 100 )

Constructs a FlipbookComponent with the given textures, looping option, and draw order.

Parameters
pTextureVector of textures for the flipbook animation.
pLoopingWhether the animation should loop (default: true).
pDrawOrderDraw order for rendering (default: 100).

Member Function Documentation

◆ GetFlipbookFps()

float clt::FlipbookComponent::GetFlipbookFps ( ) const
inline

Gets the current animation frame rate (FPS).

Returns
Animation FPS.

◆ GetFlipbookTextures()

std::vector< Texture * > clt::FlipbookComponent::GetFlipbookTextures ( ) const
inline

Gets the textures used for the flipbook animation.

Returns
Vector of textures.

◆ GetLooping()

bool clt::FlipbookComponent::GetLooping ( ) const
inline

Checks if the animation is set to loop.

Returns
True if looping, false otherwise.

◆ SetFlipbookFps()

void FlipbookComponent::SetFlipbookFps ( float pFps)

Sets the animation frame rate (FPS).

Parameters
pFpsFrames per second.

◆ SetFlipbookTextures()

void FlipbookComponent::SetFlipbookTextures ( const std::vector< Texture * > pTextures)

Sets the textures used for the flipbook animation.

Parameters
pTexturesVector of textures.

◆ SetLooping()

void clt::FlipbookComponent::SetLooping ( bool pLooping)
inline

Sets whether the animation should loop.

Parameters
pLoopingTrue to enable looping, false otherwise.

◆ SetOwner()

virtual void clt::FlipbookComponent::SetOwner ( Actor * pOwner)
inlineoverridevirtual

Sets the owner actor for this component and initializes the texture.

Parameters
pOwnerPointer to the owner Actor.

Reimplemented from clt::SpriteComponent.

◆ Update()

void FlipbookComponent::Update ( )
overridevirtual

Updates the animation frame. Should be called every frame.

Reimplemented from clt::Component.


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