Castor3D 0.12.0
Multiplatform 3D engine
Public Member Functions | Protected Attributes | Friends | List of all members
castor3d::SceneNodeAnimationInstance Class Reference

#include <SceneNodeAnimationInstance.hpp>

Inheritance diagram for castor3d::SceneNodeAnimationInstance:
Inheritance graph
[legend]
Collaboration diagram for castor3d::SceneNodeAnimationInstance:
Collaboration graph
[legend]

Public Member Functions

C3D_API SceneNodeAnimationInstance (AnimatedSceneNode &object, SceneNodeAnimation &animation)
 Constructor. More...
 
C3D_API SceneNodeAnimationInstance (SceneNodeAnimationInstance &&rhs)=default
 
C3D_API SceneNodeAnimationInstanceoperator= (SceneNodeAnimationInstance &&rhs)=delete
 
C3D_API SceneNodeAnimationInstance (SceneNodeAnimationInstance const &rhs)=delete
 
C3D_API SceneNodeAnimationInstanceoperator= (SceneNodeAnimationInstance const &rhs)=delete
 
SceneNodeAnimation const & getSceneNodeAnimation () const
 
AnimatedSceneNodegetAnimatedSceneNode ()
 
castor::Point3f const & getInitialPosition () const
 
castor::Quaternion const & getInitialOrientation () const
 
castor::Point3f const & getInitialScale () const
 
- Public Member Functions inherited from castor3d::AnimationInstance
C3D_API AnimationInstance (AnimatedObject &object, Animation &animation)
 Constructor. More...
 
virtual C3D_API ~AnimationInstance ()=default
 Destructor. More...
 
C3D_API void update (castor::Milliseconds const &elapsed)
 Updates the animation, updates the key frame at the good time index. More...
 
C3D_API void play ()
 Plays the animation. More...
 
C3D_API void pause ()
 Pauses the animation. More...
 
C3D_API void stop ()
 Stops the animation. More...
 
AnimationState getState () const
 
float getScale () const
 
void setScale (float value)
 Sets the animation time scale. More...
 
castor::Milliseconds getStartingPoint () const
 
void setStartingPoint (castor::Milliseconds value)
 Sets the animation stopping point. More...
 
castor::Milliseconds getStoppingPoint () const
 
void setStoppingPoint (castor::Milliseconds value)
 Sets the animation stopping point. More...
 
bool isLooped () const
 
void setLooped (bool value)
 Sets the animation loop status. More...
 
Animation const & getAnimation () const
 

Protected Attributes

AnimatedSceneNodem_animatedSceneNode
 
SceneNodeAnimationm_sceneNodeAnimation
 
AnimationKeyFrameArray::iterator m_prev
 
AnimationKeyFrameArray::iterator m_curr
 
InterpolatorT< castor::Point3f, InterpolatorType::eLinearm_vecInterpolator
 
InterpolatorT< castor::Quaternion, InterpolatorType::eLinearm_quatInterpolator
 
castor::Point3f m_initialTranslate
 
castor::Quaternion m_initialRotate
 
castor::Point3f m_initialScale
 
- Protected Attributes inherited from castor3d::AnimationInstance
Animation const & m_animation
 
float m_scale { 1.0f }
 
bool m_looped { false }
 
castor::Milliseconds m_startingPoint { 0 }
 
castor::Milliseconds m_stoppingPoint { 0 }
 
castor::Milliseconds m_currentTime { 0 }
 
AnimationState m_state { AnimationState::eStopped }
 

Friends

class BinaryWriter< SceneNodeAnimation >
 
class BinaryParser< SceneNodeAnimation >
 

Constructor & Destructor Documentation

◆ SceneNodeAnimationInstance() [1/3]

C3D_API castor3d::SceneNodeAnimationInstance::SceneNodeAnimationInstance ( SceneNodeAnimationInstance &&  rhs)
default

name Copy / Move.

◆ SceneNodeAnimationInstance() [2/3]

C3D_API castor3d::SceneNodeAnimationInstance::SceneNodeAnimationInstance ( SceneNodeAnimationInstance const &  rhs)
delete

◆ SceneNodeAnimationInstance() [3/3]

C3D_API castor3d::SceneNodeAnimationInstance::SceneNodeAnimationInstance ( AnimatedSceneNode object,
SceneNodeAnimation animation 
)

Constructor.

Parameters
[in]objectThe parent AnimatedMesh.
[in]animationThe animation.

Member Function Documentation

◆ getAnimatedSceneNode()

AnimatedSceneNode & castor3d::SceneNodeAnimationInstance::getAnimatedSceneNode ( )
inline

References m_animatedSceneNode.

◆ getInitialOrientation()

castor::Quaternion const & castor3d::SceneNodeAnimationInstance::getInitialOrientation ( ) const
inline

References m_initialRotate.

◆ getInitialPosition()

castor::Point3f const & castor3d::SceneNodeAnimationInstance::getInitialPosition ( ) const
inline

References m_initialTranslate.

◆ getInitialScale()

castor::Point3f const & castor3d::SceneNodeAnimationInstance::getInitialScale ( ) const
inline

References m_initialScale.

◆ getSceneNodeAnimation()

SceneNodeAnimation const & castor3d::SceneNodeAnimationInstance::getSceneNodeAnimation ( ) const
inline

name Getters.

References m_sceneNodeAnimation.

◆ operator=() [1/2]

C3D_API SceneNodeAnimationInstance & castor3d::SceneNodeAnimationInstance::operator= ( SceneNodeAnimationInstance &&  rhs)
delete

◆ operator=() [2/2]

C3D_API SceneNodeAnimationInstance & castor3d::SceneNodeAnimationInstance::operator= ( SceneNodeAnimationInstance const &  rhs)
delete

Friends And Related Function Documentation

◆ BinaryParser< SceneNodeAnimation >

friend class BinaryParser< SceneNodeAnimation >
friend

◆ BinaryWriter< SceneNodeAnimation >

friend class BinaryWriter< SceneNodeAnimation >
friend

Member Data Documentation

◆ m_animatedSceneNode

AnimatedSceneNode& castor3d::SceneNodeAnimationInstance::m_animatedSceneNode
protected

Referenced by getAnimatedSceneNode().

◆ m_curr

AnimationKeyFrameArray::iterator castor3d::SceneNodeAnimationInstance::m_curr
protected

◆ m_initialRotate

castor::Quaternion castor3d::SceneNodeAnimationInstance::m_initialRotate
protected

Referenced by getInitialOrientation().

◆ m_initialScale

castor::Point3f castor3d::SceneNodeAnimationInstance::m_initialScale
protected

Referenced by getInitialScale().

◆ m_initialTranslate

castor::Point3f castor3d::SceneNodeAnimationInstance::m_initialTranslate
protected

Referenced by getInitialPosition().

◆ m_prev

AnimationKeyFrameArray::iterator castor3d::SceneNodeAnimationInstance::m_prev
protected

◆ m_quatInterpolator

InterpolatorT< castor::Quaternion, InterpolatorType::eLinear > castor3d::SceneNodeAnimationInstance::m_quatInterpolator
protected

◆ m_sceneNodeAnimation

SceneNodeAnimation& castor3d::SceneNodeAnimationInstance::m_sceneNodeAnimation
protected

Referenced by getSceneNodeAnimation().

◆ m_vecInterpolator

InterpolatorT< castor::Point3f, InterpolatorType::eLinear > castor3d::SceneNodeAnimationInstance::m_vecInterpolator
protected

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