GameKit
0.0.1a
C++ gamedev tools
source
scene
view
SpriteView.cpp
Go to the documentation of this file.
1
/*
2
* =====================================================================================
3
*
4
* Filename: SpriteView.cpp
5
*
6
* Description:
7
*
8
* Created: 26/01/2018 01:30:28
9
*
10
* Author: Quentin Bazin, <quent42340@gmail.com>
11
*
12
* =====================================================================================
13
*/
14
#include "
gk/graphics/Image.hpp
"
15
#include "
gk/graphics/RectangleShape.hpp
"
16
#include "
gk/graphics/Sprite.hpp
"
17
#include "
gk/scene/component/HitboxComponent.hpp
"
18
#include "
gk/scene/component/LifetimeComponent.hpp
"
19
#include "
gk/scene/component/PositionComponent.hpp
"
20
#include "
gk/scene/view/SpriteView.hpp
"
21
22
namespace
gk
{
23
24
void
SpriteView::draw
(
const
SceneObject
&
object
,
RenderTarget
&target,
RenderStates
states) {
25
if
(
object
.has<LifetimeComponent>() &&
object
.get<LifetimeComponent>().dead(
object
))
26
return
;
27
28
if
(
object
.has<PositionComponent>())
29
states.
transform
.
translate
({
object
.get<
PositionComponent
>(), 0.f});
30
31
if
(
object
.has<Image>()) {
32
target.
draw
(
object
.get<Image>(), states);
33
}
34
35
if
(
object
.has<Sprite>()) {
36
target.
draw
(
object
.get<Sprite>(), states);
37
}
38
}
39
40
}
// namespace gk
41
gk::Transform::translate
Transform & translate(float x, float y, float z=0)
Definition:
Transform.cpp:28
gk
Definition:
AudioPlayer.hpp:21
Image.hpp
gk::PositionComponent
Definition:
PositionComponent.hpp:21
gk::RenderStates
Definition:
RenderStates.hpp:42
Sprite.hpp
gk::RenderTarget::draw
void draw(const IDrawable &drawable, const RenderStates &states=RenderStates::Default)
Definition:
RenderTarget.cpp:26
HitboxComponent.hpp
gk::RenderStates::transform
Transform transform
Definition:
RenderStates.hpp:45
RectangleShape.hpp
gk::SpriteView::draw
void draw(const SceneObject &object, RenderTarget &target, RenderStates states) override
Definition:
SpriteView.cpp:24
SpriteView.hpp
gk::RenderTarget
Definition:
RenderTarget.hpp:27
PositionComponent.hpp
gk::SceneObject
Definition:
SceneObject.hpp:25
LifetimeComponent.hpp
Generated by
1.8.12