Jopnal Engine  alpha 0.4
Simple Component Based 2D/3D Game Engine
Public Types | Public Member Functions | List of all members
jop::AnimatedSprite Class Reference

#include <AnimatedSprite.hpp>

Inheritance diagram for jop::AnimatedSprite:
jop::Drawable jop::CullerComponent jop::PhantomBody jop::Collider jop::Component jop::SafeReferenceable< Collider >

Public Types

enum  Status { Status::Playing, Status::Paused, Status::Stopped }
 
- Public Types inherited from jop::Drawable
enum  Flag : uint32 { ReceiveLights = 1, ReceiveShadows = 1 << 1, CastShadows = 1 << 2, Reflected = 1 << 3 }
 

Public Member Functions

 AnimatedSprite (Object &object, Renderer &renderer, const RenderPass::Pass pass=RenderPass::Pass::BeforePost, const bool cull=true)
 
 AnimatedSprite (Object &object, RenderPass &pass, const bool cull=true)
 
 ~AnimatedSprite ()
 Destructor. More...
 
void update (const float deltaTime) override
 Update sprite animation. More...
 
void stop ()
 Stop animating. More...
 
void play (const unsigned int repeats=0)
 Play animation. More...
 
void pause ()
 Pause animation. More...
 
AnimatedSpritesetAnimationRange (const uint32 startIndex, const uint32 endIndex)
 Set the animation range. More...
 
AnimatedSpritesetFrameTime (const float seconds)
 Set the frame time. More...
 
AnimatedSpritesetAtlas (const AnimationAtlas &atlas)
 Set animation atlas. More...
 
Status getStatus () const
 Get status. More...
 
int getRemainingRepeats () const
 Get the remaining repeats. More...
 
- Public Member Functions inherited from jop::Drawable
 Drawable (Object &object, Renderer &renderer, const RenderPass::Pass pass=RenderPass::Pass::BeforePost, const bool cull=true)
 Constructor. More...
 
 Drawable (Object &object, RenderPass &pass, const bool cull=true)
 Overloaded constructor. More...
 
virtual ~Drawable () override
 Virtual destructor. More...
 
virtual void draw (const ProjectionInfo &proj, const LightContainer &lights) const
 Draw function. More...
 
RenderergetRendrer ()
 Get the renderer this drawable is bound to. More...
 
const RenderergetRenderer () const
 Get the renderer this drawable is bound to. More...
 
DrawablesetRenderGroup (const uint8 group)
 Set the render group. More...
 
uint8 getRenderGroup () const
 Get the render group. More...
 
DrawablesetModel (const Model &model)
 Set the model. More...
 
ModelgetModel ()
 Get the model. More...
 
const ModelgetModel () const
 Get the model. More...
 
DrawablesetColor (const Color &color)
 Set the color. More...
 
const ColorgetColor () const
 Get the color. More...
 
const std::pair< glm::vec3, glm::vec3 > & getLocalBounds () const
 Get the local bounds. More...
 
std::pair< glm::vec3, glm::vec3 > getGlobalBounds () const
 Get the global bounds. More...
 
DrawablesetFlags (const uint32 flags)
 Set flags. More...
 
bool hasFlag (const uint32 flag) const
 Check if this drawable has a flag. More...
 
ShaderProgramgetShader () const
 Get the current shader. More...
 
void setOverrideShader (ShaderProgram &shader)
 Set an override shader. More...
 
void removeOverrideShader ()
 Remove the override shader if one is bound. More...
 
bool hasOverrideShader () const
 Check if using an override shader. More...
 
uint64 getAttributes () const
 Get the internal attribute field. More...
 
- Public Member Functions inherited from jop::PhantomBody
 PhantomBody (Object &object, World &world, CollisionShape &shape, const bool attachToWorld)
 Constructor. More...
 
virtual ~PhantomBody () override
 
void update (const float deltaTime) override
 Update function. More...
 
std::vector< Collider * > getOverlaps ()
 Get all the overlapping colliders. More...
 
std::vector< const Collider * > getOverlaps () const
 Get all the overlapping colliders. More...
 
unsigned int getOverlapAmount () const
 Get the number of overlapping colliders. More...
 
- Public Member Functions inherited from jop::Collider
bool checkOverlap (const Collider &other) const
 Check if this collider overlaps with another. More...
 
bool checkContact (const Collider &other) const
 Check if this collider is in contact with another. More...
 
bool checkRay (const glm::vec3 &start, const glm::vec3 &ray) const
 Check if a ray pierces this collider. More...
 
void registerListener (ContactListener &listener)
 Register a listener for this collider. More...
 
WorldgetWorld ()
 Get the world this collider belongs to. More...
 
const WorldgetWorld () const
 Get the world this collider belongs to. More...
 
void detachFromWorld ()
 Detach this body from its world. More...
 
void attachToWorld ()
 Attach this body to its world if it was previously detached. More...
 
bool isDetachedFromWorld () const
 Check if this body is currently detached from its world. More...
 
void updateWorldBounds ()
 Force update of the world space bounds. More...
 
void setCollisionShape (CollisionShape &shape)
 Set the collision shape. More...
 
const CollisionShapegetCollisionShape () const
 Get the collision shape. More...
 
- Public Member Functions inherited from jop::Component
virtual ~Component ()=0
 Virtual destructor. More...
 
Message::Result sendMessage (const Message &message)
 Send a message to this component. More...
 
uint32 getID () const
 Get the identifier. More...
 
void setID (const uint32 ID)
 Set the identifier. More...
 
WeakReference< ObjectgetObject ()
 Get the object this component is bound to. More...
 
WeakReference< const ObjectgetObject () const
 Get the object this component is bound to. More...
 
bool isActive () const
 Check if this component is active. More...
 
void removeSelf ()
 Remove this component from its object. More...
 
- Public Member Functions inherited from jop::SafeReferenceable< Collider >
WeakReference< CollidergetReference () const
 Get a weak reference to the bound object. More...
 

Additional Inherited Members

- Protected Types inherited from jop::CullerComponent
enum  Type { Type::Drawable, Type::Camera, Type::LightSource, Type::EnvironmentRecorder }
 
- Protected Member Functions inherited from jop::Drawable
 JOP_GENERIC_COMPONENT_CLONE (Drawable)
 
virtual Message::Result receiveMessage (const Message &message) override
 Receive a message. More...
 
- Protected Member Functions inherited from jop::CullerComponent
 JOP_GENERIC_COMPONENT_CLONE (CullerComponent)
 
 CullerComponent (Object &object, World &world, const Type type, const bool attach)
 
- Protected Member Functions inherited from jop::PhantomBody
 JOP_GENERIC_COMPONENT_CLONE (PhantomBody)
 
- Protected Member Functions inherited from jop::Collider
 Collider (Object &object, World &world, const uint32 ID)
 Constructor. More...
 
 Collider (const Collider &other, Object &newObj)
 Copy constructor. More...
 
virtual ~Collider () override=0
 Virtual destructor. More...
 
void setAllowSleep (const bool allow)
 Set whether the collider is allowed to sleep. More...
 
bool isSleepAllowed () const
 Check if sleep is allowed. More...
 
- Protected Member Functions inherited from jop::Component
 Component (Object &object, const uint32 ID)
 Constructor. More...
 
 Component (const Component &other, Object &newObj)
 Copy constructor. More...
 
- Protected Member Functions inherited from jop::SafeReferenceable< Collider >
 SafeReferenceable (Collider *ref)
 Constructor. More...
 
 SafeReferenceable (SafeReferenceable< Collider > &&other)
 Move constructor. More...
 
SafeReferenceableoperator= (SafeReferenceable< Collider > &&other)
 Move assignment operator. More...
 
 ~SafeReferenceable ()
 Protected destructor. More...
 
- Protected Attributes inherited from jop::Drawable
uint64 m_attributes
 Attribute flags. More...
 
- Protected Attributes inherited from jop::Collider
std::unique_ptr< btCollisionObject > m_body
 Body data. More...
 
Worldm_worldRef
 Reference to the world. More...
 
std::set< ContactListener * > m_listeners
 Listeners registered for this collider. More...
 
bool m_detached
 Is this body detached from the world? More...
 
bool m_allowSleep
 Is sleep allowed? More...
 

Detailed Description

Definition at line 38 of file AnimatedSprite.hpp.

Member Enumeration Documentation

Animation status

Enumerator
Playing 

Currently playing.

Paused 

Paused.

Stopped 

Stopped.

Definition at line 44 of file AnimatedSprite.hpp.

Constructor & Destructor Documentation

jop::AnimatedSprite::AnimatedSprite ( Object object,
Renderer renderer,
const RenderPass::Pass  pass = RenderPass::Pass::BeforePost,
const bool  cull = true 
)

jop::AnimatedSprite::AnimatedSprite ( Object object,
RenderPass pass,
const bool  cull = true 
)

jop::AnimatedSprite::~AnimatedSprite ( )

Destructor.

Member Function Documentation

int jop::AnimatedSprite::getRemainingRepeats ( ) const

Get the remaining repeats.

Returns
Remaining repeats. Negative if infinite
Status jop::AnimatedSprite::getStatus ( ) const

Get status.

Returns
The current status
void jop::AnimatedSprite::pause ( )

Pause animation.

void jop::AnimatedSprite::play ( const unsigned int  repeats = 0)

Play animation.

Parameters
repeatsHow many times to repeat the animation? Zero to repeat indefinitely
AnimatedSprite& jop::AnimatedSprite::setAnimationRange ( const uint32  startIndex,
const uint32  endIndex 
)

Set the animation range.

Parameters
startIndexThe first frame in the range
endIndexThe last frame in the range
Returns
Reference to self
AnimatedSprite& jop::AnimatedSprite::setAtlas ( const AnimationAtlas atlas)

Set animation atlas.

Parameters
atlasReference to the animation atlas holding the frames
Returns
Reference to self
AnimatedSprite& jop::AnimatedSprite::setFrameTime ( const float  seconds)

Set the frame time.

Parameters
secondsTime taken for each frame (1.f / 60.f = 60FPS)
Returns
Reference to self
void jop::AnimatedSprite::stop ( )

Stop animating.

void jop::AnimatedSprite::update ( const float  deltaTime)
overridevirtual

Update sprite animation.

Cycles through animation range with given frame time.

Parameters
deltaTimeThe delta time

Reimplemented from jop::Component.


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