Fireworks Engine  v2.0
Lightweight Sandbox Game Engine using OpenGL for additional Customisation and Quick Prototyping
layer.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "../renderers/renderer2d.h"
4 #include "../renderers/batchrenderer2d.h"
5 #include "../renderers/ShotRenderer2D.h"
6 #include "../renderables/renderable2d.h"
7 
8 namespace fireworks { namespace graphics {
9 
14  class Layer
15  {
16  public:
20  std::vector<Renderable2D*> m_Renderables;
21  public:
26  Layer(Renderer2D* renderer);
27  virtual ~Layer();
29  virtual void add(Renderable2D* renderable);
31  virtual void render();
32 
36  inline const std::vector<Renderable2D*>& getRenderables() { return m_Renderables; }
37  };
38 
39 } }
virtual ~Layer()
Definition: layer.cpp:11
The Class responsible for drawing the basic Renderable objects onto the screen.
Definition: renderable2d.h:36
virtual void add(Renderable2D *renderable)
Use this to add the renderables to the layer.
Definition: layer.cpp:21
Definition: audioclip.cpp:3
std::vector< Renderable2D * > m_Renderables
The collection of renderables rendered by the layer.
Definition: layer.h:20
virtual void render()
Renders all the renderables present in the layer.
Definition: layer.cpp:30
Layer(Renderer2D *renderer)
Create the layer by passing the renderer of your choice.
Definition: layer.cpp:5
Forward declaration of the graphics::Renderable2D.
Definition: renderer2d.h:15
Creates a Layer to hold a collection of renderables.
Definition: layer.h:14
Renderer2D * m_Renderer
The renderer used the by the layer to render the renderables.
Definition: layer.h:18
const std::vector< Renderable2D * > & getRenderables()
Gets the list of renderables in the layer.
Definition: layer.h:36