Radium Engine
1.5.20
|
#include <Engine/Rendering/RenderTechnique.hpp>
Static Public Member Functions | |
static RenderTechnique | createDefaultRenderTechnique () |
Set of shaders to be used by the renderer to render objects with associated data.
Definition at line 63 of file RenderTechnique.hpp.
Ra::Engine::Rendering::RenderTechnique::RenderTechnique | ( | ) |
Definition at line 17 of file RenderTechnique.cpp.
Ra::Engine::Rendering::RenderTechnique::RenderTechnique | ( | const RenderTechnique & | o | ) |
copy constuctor, only active pass and active pass parameters are copied.
Definition at line 24 of file RenderTechnique.cpp.
void Ra::Engine::Rendering::RenderTechnique::addPassProperties | ( | const std::list< std::string > & | props, |
Core::Utils::Index | pass = Core::Utils::Index {} ) |
Add properties (several #define in the shader) for the given pass
props | the properties list, only strings without the #define |
pass | the pass. If left by default, all active passes will get the properties |
Definition at line 71 of file RenderTechnique.cpp.
|
inline |
Mark the given not configured.
pass | The index of the pass |
Definition at line 269 of file RenderTechnique.hpp.
|
inline |
Clear the dirty bit for the given pass (openGL state updated)
pass | The index of the pass |
Definition at line 257 of file RenderTechnique.hpp.
|
static |
Creates a default technique based on the ForwarRenderer sementic. pass 1 --> Z_PREPASS pass 0 --> LIGHTING_OPAQUE pass 2 --> LIGHTING_TRANSPARENT
Definition at line 115 of file RenderTechnique.cpp.
|
inline |
Get the configuration of the given pass
pass | The index of the pass |
Definition at line 274 of file RenderTechnique.hpp.
const Data::ShaderParameterProvider * Ra::Engine::Rendering::RenderTechnique::getParametersProvider | ( | Core::Utils::Index | pass = DefaultRenderingPasses::LIGHTING_OPAQUE | ) | const |
Get the Data::ShaderProgram parameters associated with the pass
pass | The index of the pass |
Definition at line 93 of file RenderTechnique.cpp.
const Data::ShaderProgram * Ra::Engine::Rendering::RenderTechnique::getShader | ( | Core::Utils::Index | pass = DefaultRenderingPasses::LIGHTING_OPAQUE | ) | const |
Get the Data::ShaderProgram associated with the pass
pass | The index of the pass |
Definition at line 46 of file RenderTechnique.cpp.
|
inline |
Test if the given pass was configured
pass | The index of the pass |
Definition at line 261 of file RenderTechnique.hpp.
|
inline |
Test if the given pass is dirty (openGL state not updated)
pass | The index of the pass |
Definition at line 245 of file RenderTechnique.hpp.
void Ra::Engine::Rendering::RenderTechnique::setConfiguration | ( | const Data::ShaderConfiguration & | newConfig, |
Core::Utils::Index | pass = DefaultRenderingPasses::LIGHTING_OPAQUE ) |
Set the shader configuration for the given pass. m_numActivePass is updated to be the max of all indices that are set this way.
newConfig | The pass shader configuration |
pass | The index of the pass to set |
Definition at line 38 of file RenderTechnique.cpp.
|
inline |
Mark the given configured.
pass | The index of the pass |
Definition at line 265 of file RenderTechnique.hpp.
|
inline |
Set the given pass dirty (openGL state not updated)
pass | The index of the pass |
Set the given pass dirty (openGL state updated)
pass | The index of the pass |
Definition at line 253 of file RenderTechnique.hpp.
void Ra::Engine::Rendering::RenderTechnique::setParametersProvider | ( | std::shared_ptr< Data::ShaderParameterProvider > | provider, |
Core::Utils::Index | pass = Core::Utils::Index( -1 ) ) |
Set the shader parameter provider for the given pass.
provider | The rendering parameter provider |
pass | The index of the pass to set. If this -1, all active passes will share the same provider. |
Definition at line 51 of file RenderTechnique.cpp.
void Ra::Engine::Rendering::RenderTechnique::updateGL | ( | ) |
Update all openGL status of active passes.
Definition at line 98 of file RenderTechnique.cpp.