Polyphase Game Engine
Loading...
Searching...
No Matches
TransformAnimationAsset.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
Asset.h
"
4
#include "
Factory.h
"
5
#include "
Timeline/TimelineTypes.h
"
6
7
#include <vector>
8
9
class
TransformAnimationAsset
:
public
Asset
10
{
11
public
:
12
13
DECLARE_ASSET
(
TransformAnimationAsset
,
Asset
);
14
15
TransformAnimationAsset
();
16
~TransformAnimationAsset
();
17
18
virtual
void
LoadStream
(
Stream
& stream,
Platform
platform)
override
;
19
virtual
void
SaveStream
(
Stream
& stream,
Platform
platform)
override
;
20
virtual
void
Create
()
override
;
21
virtual
void
Destroy
()
override
;
22
23
virtual
void
GatherProperties
(std::vector<Property>& outProps)
override
;
24
virtual
glm::vec4
GetTypeColor
()
override
;
25
virtual
const
char
*
GetTypeName
()
override
;
26
27
TransformKeyframe
Sample
(
float
time)
const
;
28
29
size_t
GetKeyframeCount
()
const
{
return
mKeyframes
.size(); }
30
const
TransformKeyframe
&
GetKeyframe
(
size_t
i)
const
{
return
mKeyframes
[i]; }
31
const
std::vector<TransformKeyframe>&
GetKeyframes
()
const
{
return
mKeyframes
; }
32
std::vector<TransformKeyframe>&
GetKeyframesMutable
() {
return
mKeyframes
; }
33
34
void
SetKeyframes
(
const
std::vector<TransformKeyframe>& keyframes);
35
void
AddKeyframe
(
const
TransformKeyframe
& kf);
36
void
RemoveKeyframe
(
size_t
index);
37
void
ClearKeyframes
();
38
39
float
GetDuration
()
const
{
return
mDuration
; }
40
void
SetDuration
(
float
duration) {
mDuration
= duration; }
41
42
bool
IsLooping
()
const
{
return
mLoop
; }
43
void
SetLooping
(
bool
loop) {
mLoop
= loop; }
44
45
float
GetPlayRate
()
const
{
return
mPlayRate
; }
46
void
SetPlayRate
(
float
rate) {
mPlayRate
= rate; }
47
48
protected
:
49
50
std::vector<TransformKeyframe>
mKeyframes
;
51
float
mDuration
= 1.0f;
52
bool
mLoop
=
false
;
53
float
mPlayRate
= 1.0f;
54
};
Asset.h
Platform
Platform
Definition
EngineTypes.h:31
Factory.h
TimelineTypes.h
Asset
Definition
Asset.h:119
Stream
Definition
Stream.h:21
TransformAnimationAsset
Definition
TransformAnimationAsset.h:10
TransformAnimationAsset::Sample
TransformKeyframe Sample(float time) const
Definition
TransformAnimationAsset.cpp:91
TransformAnimationAsset::SetPlayRate
void SetPlayRate(float rate)
Definition
TransformAnimationAsset.h:46
TransformAnimationAsset::mPlayRate
float mPlayRate
Definition
TransformAnimationAsset.h:53
TransformAnimationAsset::mKeyframes
std::vector< TransformKeyframe > mKeyframes
Definition
TransformAnimationAsset.h:50
TransformAnimationAsset::Destroy
virtual void Destroy() override
Definition
TransformAnimationAsset.cpp:65
TransformAnimationAsset::GetTypeColor
virtual glm::vec4 GetTypeColor() override
Definition
TransformAnimationAsset.cpp:81
TransformAnimationAsset::ClearKeyframes
void ClearKeyframes()
Definition
TransformAnimationAsset.cpp:157
TransformAnimationAsset::DECLARE_ASSET
DECLARE_ASSET(TransformAnimationAsset, Asset)
TransformAnimationAsset::IsLooping
bool IsLooping() const
Definition
TransformAnimationAsset.h:42
TransformAnimationAsset::GetDuration
float GetDuration() const
Definition
TransformAnimationAsset.h:39
TransformAnimationAsset::GetKeyframe
const TransformKeyframe & GetKeyframe(size_t i) const
Definition
TransformAnimationAsset.h:30
TransformAnimationAsset::RemoveKeyframe
void RemoveKeyframe(size_t index)
Definition
TransformAnimationAsset.cpp:149
TransformAnimationAsset::GetKeyframesMutable
std::vector< TransformKeyframe > & GetKeyframesMutable()
Definition
TransformAnimationAsset.h:32
TransformAnimationAsset::TransformAnimationAsset
TransformAnimationAsset()
Definition
TransformAnimationAsset.cpp:8
TransformAnimationAsset::SetDuration
void SetDuration(float duration)
Definition
TransformAnimationAsset.h:40
TransformAnimationAsset::AddKeyframe
void AddKeyframe(const TransformKeyframe &kf)
Definition
TransformAnimationAsset.cpp:135
TransformAnimationAsset::mLoop
bool mLoop
Definition
TransformAnimationAsset.h:52
TransformAnimationAsset::GetKeyframes
const std::vector< TransformKeyframe > & GetKeyframes() const
Definition
TransformAnimationAsset.h:31
TransformAnimationAsset::LoadStream
virtual void LoadStream(Stream &stream, Platform platform) override
Definition
TransformAnimationAsset.cpp:17
TransformAnimationAsset::SetKeyframes
void SetKeyframes(const std::vector< TransformKeyframe > &keyframes)
Definition
TransformAnimationAsset.cpp:130
TransformAnimationAsset::SaveStream
virtual void SaveStream(Stream &stream, Platform platform) override
Definition
TransformAnimationAsset.cpp:39
TransformAnimationAsset::GetKeyframeCount
size_t GetKeyframeCount() const
Definition
TransformAnimationAsset.h:29
TransformAnimationAsset::SetLooping
void SetLooping(bool loop)
Definition
TransformAnimationAsset.h:43
TransformAnimationAsset::mDuration
float mDuration
Definition
TransformAnimationAsset.h:51
TransformAnimationAsset::GetTypeName
virtual const char * GetTypeName() override
Definition
TransformAnimationAsset.cpp:86
TransformAnimationAsset::GatherProperties
virtual void GatherProperties(std::vector< Property > &outProps) override
Definition
TransformAnimationAsset.cpp:71
TransformAnimationAsset::~TransformAnimationAsset
~TransformAnimationAsset()
Definition
TransformAnimationAsset.cpp:13
TransformAnimationAsset::Create
virtual void Create() override
Definition
TransformAnimationAsset.cpp:60
TransformAnimationAsset::GetPlayRate
float GetPlayRate() const
Definition
TransformAnimationAsset.h:45
TransformKeyframe
Definition
TimelineTypes.h:18
Engine
Source
Engine
Assets
TransformAnimationAsset.h
Generated by
1.9.8