diff --git a/include/Spectre/Graphics/Renderable.h b/include/Spectre/Graphics/Renderable.h index 31425d7..dbb2c65 100644 --- a/include/Spectre/Graphics/Renderable.h +++ b/include/Spectre/Graphics/Renderable.h @@ -25,6 +25,9 @@ public : Renderable2D(const Vector2f& position); virtual ~Renderable2D(); + unsigned char getZOrder() const; + void setZOrder(unsigned char value); + virtual const std::vector& getVertices() const = 0; virtual const std::vector& getIndices() const = 0; @@ -34,6 +37,10 @@ public : virtual const RenderType getRenderType() const = 0; virtual void render(Renderer2D& renderer) const = 0; + +protected : + + unsigned char m_zorder; }; #endif /* SPECTRE_GRAPHCIS_RENDERABLE_H */ diff --git a/source/Graphics/Renderable2D.cpp b/source/Graphics/Renderable2D.cpp index c30cec8..f7a68ba 100644 --- a/source/Graphics/Renderable2D.cpp +++ b/source/Graphics/Renderable2D.cpp @@ -1,11 +1,13 @@ #include -Renderable2D::Renderable2D() +Renderable2D::Renderable2D() : +m_zorder (0) { } Renderable2D::Renderable2D(const Vector2f& position) : +m_zorder (0), Transformable (position) { } @@ -13,3 +15,13 @@ Transformable (position) Renderable2D::~Renderable2D() { } + +unsigned char Renderable2D::getZOrder() const +{ + return m_zorder; +} + +void Renderable2D::setZOrder(unsigned char value) +{ + m_zorder = value; +} \ No newline at end of file