The SceneRenderer class Renders the scene: Packs the scene in the buffer and draws the scene in as few render calls as possible. The SceneRenderer uses specialized Renderer for diffrent types of geometry.
More...
#include <scenerenderer.h>
|
void | paint (QOpenGLFunctions &gl, const QMatrix4x4 &viewProjection, const QHash< ShaderPrograms, QOpenGLShaderProgram * > &shaderPrograms) |
| paint Paints the previous synchronized scene using specified programs. More...
|
|
The SceneRenderer class Renders the scene: Packs the scene in the buffer and draws the scene in as few render calls as possible. The SceneRenderer uses specialized Renderer for diffrent types of geometry.
SceneRenderer::SceneRenderer |
( |
QObject * |
parent = 0 | ) |
|
|
explicit |
SceneRenderer::~SceneRenderer |
( |
| ) |
|
|
virtual |
void SceneRenderer::cleanup |
( |
QOpenGLFunctions & |
gl | ) |
|
Clears all used resources.
- Parameters
-
gl | QOpenGLFunctions which can be used by SceneRenderer to release GPU resources |
void SceneRenderer::initalizationDone |
( |
| ) |
|
|
signal |
This signal is emitted after initialization of all resources is done.
void SceneRenderer::initalize |
( |
QOpenGLFunctions & |
gl | ) |
|
|
protected |
void SceneRenderer::paint |
( |
QOpenGLFunctions & |
gl, |
|
|
const QMatrix4x4 & |
viewProjection, |
|
|
const QHash< ShaderPrograms, QOpenGLShaderProgram * > & |
shaderPrograms |
|
) |
| |
|
slot |
paint Paints the previous synchronized scene using specified programs.
- Parameters
-
gl | QOpenGLFunctions which will be used for any gl-call |
viewProjection | The viewprojection matrix which will be used. |
shaderPrograms | A QHash containing different shader programs for different components of scene (lightrays and gems) |
void SceneRenderer::paintGems |
( |
QOpenGLFunctions & |
gl, |
|
|
QOpenGLShaderProgram & |
shaderProgram |
|
) |
| |
Paints the previous synchronized gems using specified program.
- Parameters
-
gl | QOpenGLFunctions which will be used for any gl-call |
viewProjection | The viewprojection matrix which will be used. |
shaderProgram | The specified shaderprogram used for rendering. |
void SceneRenderer::paintLightRays |
( |
QOpenGLFunctions & |
gl, |
|
|
const QMatrix4x4 & |
viewProjection, |
|
|
QOpenGLShaderProgram & |
shaderProgram |
|
) |
| |
Paints previous synchronized light rays using specified program.
- Parameters
-
gl | QOpenGLFunctions which will be used for any gl-call |
viewProjection | The viewprojection matrix which will be used. |
shaderProgram | The specified shaderprogram used for rendering. |
Synchronizes given gems between gui and render thread.
- Parameters
-
geometries | List of gems which should be synchronized. |
void SceneRenderer::synchronizeLightRays |
( |
LightRay * |
rootLightRay | ) |
|
Synchronizes light rays between gui and render thread.
- Parameters
-
rootLightRay | This and all of its successors will be synchronized. |
bool SceneRenderer::m_isInitalized |
|
protected |
The documentation for this class was generated from the following files: