Radium Engine
1.5.0
SkeletonBasedAnimationSystem.hpp
1
#pragma once
2
3
#include <Engine/Scene/ItemEntry.hpp>
4
#include <Engine/Scene/System.hpp>
5
6
namespace
Ra
{
7
namespace
Engine {
8
namespace
Scene {
9
14
class
RA_ENGINE_API
SkeletonBasedAnimationSystem
:
public
System
15
{
16
public
:
18
SkeletonBasedAnimationSystem
();
19
20
~
SkeletonBasedAnimationSystem
();
21
22
SkeletonBasedAnimationSystem
(
const
SkeletonBasedAnimationSystem
& ) =
delete
;
23
SkeletonBasedAnimationSystem
& operator=(
const
SkeletonBasedAnimationSystem
& ) =
delete
;
24
27
29
void
generateTasks(
Core::TaskQueue
* taskQueue,
const
FrameInfo
& frameInfo )
override
;
30
32
void
handleAssetLoading(
Entity
* entity,
const
Core::Asset::FileData* fileData )
override
;
34
37
39
void
setXray(
bool
on );
40
42
bool
isXrayOn();
43
45
void
toggleSkeleton(
const
bool
status );
47
49
inline
void
enforceUpdate
() { m_time = -1; }
50
51
private
:
53
bool
m_xrayOn {
false
};
54
56
Scalar m_time { 0_ra };
57
};
58
59
}
// namespace Scene
60
}
// namespace Engine
61
}
// namespace Ra
Ra::Core::TaskQueue
Definition:
TaskQueue.hpp:32
Ra::Engine::Scene::Entity
An entity is an scene element. It ties together components with a transform.
Definition:
Entity.hpp:23
Ra::Engine::Scene::SkeletonBasedAnimationSystem
Definition:
SkeletonBasedAnimationSystem.hpp:15
Ra::Engine::Scene::SkeletonBasedAnimationSystem::enforceUpdate
void enforceUpdate()
Enforce Skeleton update at the next frame.
Definition:
SkeletonBasedAnimationSystem.hpp:49
Ra::Engine::Scene::System
Definition:
System.hpp:31
Ra
Definition:
Cage.cpp:3
Ra::Engine::FrameInfo
Structure passed to each system before they fill the task queue.
Definition:
FrameInfo.hpp:8
src
Engine
Scene
SkeletonBasedAnimationSystem.hpp
Generated on Wed Apr 5 2023 15:07:31 for Radium Engine by
1.9.1