Fireworks Engine  v2.0
Lightweight Sandbox Game Engine using OpenGL for additional Customisation and Quick Prototyping
fireworks::graphics::BatchRenderer3D Class Reference

Renders the 3d renderables in a single draw call using batching. More...

#include <batchrenderer3d.h>

Inheritance diagram for fireworks::graphics::BatchRenderer3D:
Collaboration diagram for fireworks::graphics::BatchRenderer3D:

Public Member Functions

 BatchRenderer3D (PerspectiveCamera *camera3D, Shader *shader)
 Creates a 3D batch renderer. More...
 
 ~BatchRenderer3D ()
 
void begin () override
 Begins the rendering process. More...
 
void submit (const Renderable3D *renderable) override
 Submits the data to the render queue. More...
 
void end () override
 Ends the submission and prepares the renderer to start drawing. More...
 
void flush () override
 Draws the data processed onto the screen. More...
 
- Public Member Functions inherited from fireworks::graphics::Renderer3D
virtual ~Renderer3D ()
 

Public Attributes

Shadershader
 The shader with which the entire batch or renderables are rendered with. More...
 
- Public Attributes inherited from fireworks::graphics::Renderer3D
PerspectiveCameram_Camera3D
 The camera to which the renderers out will be displayed to. More...
 

Protected Member Functions

void init ()
 
- Protected Member Functions inherited from fireworks::graphics::Renderer3D
 Renderer3D (PerspectiveCamera *camera3D)
 Creates the renderer using the camera. More...
 

Detailed Description

Renders the 3d renderables in a single draw call using batching.

Constructor & Destructor Documentation

◆ BatchRenderer3D()

fireworks::graphics::BatchRenderer3D::BatchRenderer3D ( PerspectiveCamera camera3D,
Shader shader 
)

Creates a 3D batch renderer.

Parameters
camera3DThe 3d camera object to which the scene is to be renderer to
shaderThe shader with which the whole bathc is renderer with

◆ ~BatchRenderer3D()

fireworks::graphics::BatchRenderer3D::~BatchRenderer3D ( )

Member Function Documentation

◆ begin()

void fireworks::graphics::BatchRenderer3D::begin ( )
overridevirtual

Begins the rendering process.

Reimplemented from fireworks::graphics::Renderer3D.

◆ end()

void fireworks::graphics::BatchRenderer3D::end ( )
overridevirtual

Ends the submission and prepares the renderer to start drawing.

Reimplemented from fireworks::graphics::Renderer3D.

◆ flush()

void fireworks::graphics::BatchRenderer3D::flush ( )
overridevirtual

Draws the data processed onto the screen.

Implements fireworks::graphics::Renderer3D.

◆ init()

void fireworks::graphics::BatchRenderer3D::init ( )
protected

◆ submit()

void fireworks::graphics::BatchRenderer3D::submit ( const Renderable3D renderable)
overridevirtual

Submits the data to the render queue.

Implements fireworks::graphics::Renderer3D.

Member Data Documentation

◆ shader

Shader* fireworks::graphics::BatchRenderer3D::shader

The shader with which the entire batch or renderables are rendered with.


The documentation for this class was generated from the following files: