This class implements a renderer for triangles with individual color ids.
Definition: TrianglesIdRenderer.h:38
static const char * programVertexShaderColorId_
The vertex shader part.
Definition: TrianglesIdRenderer.h:99
Rendering::TextureFramebufferRef textureFramebuffer_
The texture framebuffer used when rendering the color ids.
Definition: TrianglesIdRenderer.h:93
void release()
Explicitly releases this renderer and releases all resources.
Rendering::ShaderProgramRef shaderProgram_
The shader program rendering individual triangles with individual color ids.
Definition: TrianglesIdRenderer.h:90
static const char * partPlatform_
The platform-specific shader part.
Definition: TrianglesIdRenderer.h:96
bool initialize(const Rendering::Engine &engine)
Initializes this renderer.
static const char * programFragmentShaderColorId_
The fragment shader part.
Definition: TrianglesIdRenderer.h:102
bool isValid() const
Returns whether this renderer has been initialized successfully.
const Rendering::TextureFramebufferRef & textureFramebuffer() const
Returns the current texture framebuffer of this renderer.
Definition: TrianglesIdRenderer.h:105
bool render(const Rendering::VertexSetRef &vertexSet, const Rendering::TrianglesRef &triangles, const unsigned int numberTriangles, const Rendering::TextureFramebufferRef &trianglesStateFramebuffer, const SquareMatrix4 &projectionMatrix, const HomogenousMatrix4 &world_T_camera, const unsigned int width, const unsigned int height, const uint8_t minimalTriangleState, Frame *idFrame=nullptr, Frame *depthFrame=nullptr)
Renders triangles with individual ids.
~TrianglesIdRenderer()
Destructs this renderer and releases all resources.