LampyEngine
 
Загрузка...
Поиск...
Не найдено
Класс IRendererabstract

Interface for a renderer, defining core rendering operations and resource management. Подробнее...

#include <IRenderer.h>

Граф наследования:IRenderer:
VulkanRenderer

Открытые члены

 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.
 

Защищенные данные

Scenem_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.

Аргументы
vertPathPath to the vertex shader file.
fragPathPath 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.

Аргументы
vertexDataVertex 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.

Аргументы
vertPathPath to the vertex shader file.
fragPathPath 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.

Аргументы
vertexDataVertex data to remove.

Замещается в VulkanRenderer.

◆ render()

virtual void IRenderer::render ( )
pure virtual

Renders a single frame.

Замещается в VulkanRenderer.

◆ setSceneToRender()

virtual void IRenderer::setSceneToRender ( Scene * scene)
inlinevirtual

Sets the scene that the renderer will render.

Аргументы
scenePointer to the scene to render.

◆ waitIdle()

virtual void IRenderer::waitIdle ( )
pure virtual

Waits for the renderer to complete all rendering operations before proceeding.

Замещается в VulkanRenderer.


Объявления и описания членов класса находятся в файле: