Interface for a renderer, defining core rendering operations and resource management.
Подробнее...
#include <IRenderer.h>
|
| IRenderer () |
| Constructs an IRenderer with no assigned scene.
|
|
virtual | ~IRenderer () |
| Virtual destructor to ensure proper cleanup of derived renderers.
|
|
virtual void | render ()=0 |
| Renders a single frame.
|
|
virtual void | registerShader (const std::string &vertPath, const std::string &fragPath)=0 |
| Registers a shader pipeline using the provided vertex and fragment shader paths.
|
|
virtual void | removeShader (const std::string &vertPath, const std::string &fragPath)=0 |
| Removes a previously registered shader pipeline.
|
|
virtual void | registerVertexData (const std::vector< Vertex > &vertexData)=0 |
| Registers vertex data, creating a vertex buffer if needed.
|
|
virtual void | removeVertexData (const std::vector< Vertex > &vertexData)=0 |
| Removes vertex data, releasing associated buffers if no longer needed.
|
|
virtual void | setSceneToRender (Scene *scene) |
| Sets the scene that the renderer will render.
|
|
virtual void | waitIdle ()=0 |
| Waits for the renderer to complete all rendering operations before proceeding.
|
|
|
Scene * | m_rendererScene |
| Pointer to the scene currently being rendered.
|
|
Interface for a renderer, defining core rendering operations and resource management.
◆ registerShader()
virtual void IRenderer::registerShader |
( |
const std::string & | vertPath, |
|
|
const std::string & | fragPath ) |
|
pure virtual |
Registers a shader pipeline using the provided vertex and fragment shader paths.
- Аргументы
-
vertPath | Path to the vertex shader file. |
fragPath | Path to the fragment shader file. |
Замещается в VulkanRenderer.
◆ registerVertexData()
virtual void IRenderer::registerVertexData |
( |
const std::vector< Vertex > & | vertexData | ) |
|
|
pure virtual |
Registers vertex data, creating a vertex buffer if needed.
- Аргументы
-
vertexData | Vertex data to register. |
Замещается в VulkanRenderer.
◆ removeShader()
virtual void IRenderer::removeShader |
( |
const std::string & | vertPath, |
|
|
const std::string & | fragPath ) |
|
pure virtual |
Removes a previously registered shader pipeline.
- Аргументы
-
vertPath | Path to the vertex shader file. |
fragPath | Path to the fragment shader file. |
Замещается в VulkanRenderer.
◆ removeVertexData()
virtual void IRenderer::removeVertexData |
( |
const std::vector< Vertex > & | vertexData | ) |
|
|
pure virtual |
Removes vertex data, releasing associated buffers if no longer needed.
- Аргументы
-
vertexData | Vertex data to remove. |
Замещается в VulkanRenderer.
◆ render()
virtual void IRenderer::render |
( |
| ) |
|
|
pure virtual |
◆ setSceneToRender()
virtual void IRenderer::setSceneToRender |
( |
Scene * | scene | ) |
|
|
inlinevirtual |
Sets the scene that the renderer will render.
- Аргументы
-
scene | Pointer to the scene to render. |
◆ waitIdle()
virtual void IRenderer::waitIdle |
( |
| ) |
|
|
pure virtual |
Waits for the renderer to complete all rendering operations before proceeding.
Замещается в VulkanRenderer.
Объявления и описания членов класса находятся в файле: