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

Handles Vulkan rendering, resource management, and pipeline execution. Подробнее...

#include <VulkanRenderer.h>

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

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

 VulkanRenderer (Window *window)
 Constructs the Vulkan renderer and initializes Vulkan.
 
 ~VulkanRenderer () override
 Destroys the Vulkan renderer and cleans up resources.
 
virtual void render () override
 Renders a single frame.
 
virtual void waitIdle () override
 Waits for the Vulkan device to become idle.
 
virtual void registerShader (const std::string &vertPath, const std::string &fragPath) override
 Registers a shader pipeline.
 
virtual void removeShader (const std::string &vertPath, const std::string &fragPath) override
 Removes a shader pipeline.
 
virtual void registerVertexData (const std::vector< Vertex > &vertexData) override
 Registers vertex data and creates a Vulkan vertex buffer if needed.
 
virtual void removeVertexData (const std::vector< Vertex > &vertexData) override
 Removes vertex data and releases associated buffers if no longer needed.
 
void recreateSwapChainAndDependent ()
 Recreates the swap chain and all dependent resources.
 
- Открытые члены унаследованные от IRenderer
 IRenderer ()
 Constructs an IRenderer with no assigned scene.
 
virtual ~IRenderer ()
 Virtual destructor to ensure proper cleanup of derived renderers.
 
virtual void setSceneToRender (Scene *scene)
 Sets the scene that the renderer will render.
 

Дополнительные унаследованные члены

- Защищенные данные унаследованные от IRenderer
Scenem_rendererScene
 Pointer to the scene currently being rendered.
 

Подробное описание

Handles Vulkan rendering, resource management, and pipeline execution.

Конструктор(ы)

◆ VulkanRenderer()

VulkanRenderer::VulkanRenderer ( Window * window)
explicit

Constructs the Vulkan renderer and initializes Vulkan.

Аргументы
windowPointer to the application window.

Методы

◆ registerShader()

void VulkanRenderer::registerShader ( const std::string & vertPath,
const std::string & fragPath )
overridevirtual

Registers a shader pipeline.

Аргументы
vertPathPath to the vertex shader file.
fragPathPath to the fragment shader file.

Замещает IRenderer.

◆ registerVertexData()

void VulkanRenderer::registerVertexData ( const std::vector< Vertex > & vertexData)
overridevirtual

Registers vertex data and creates a Vulkan vertex buffer if needed.

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

Замещает IRenderer.

◆ removeShader()

void VulkanRenderer::removeShader ( const std::string & vertPath,
const std::string & fragPath )
overridevirtual

Removes a shader pipeline.

Аргументы
vertPathPath to the vertex shader file.
fragPathPath to the fragment shader file.

Замещает IRenderer.

◆ removeVertexData()

void VulkanRenderer::removeVertexData ( const std::vector< Vertex > & vertexData)
overridevirtual

Removes vertex data and releases associated buffers if no longer needed.

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

Замещает IRenderer.

◆ render()

void VulkanRenderer::render ( )
overridevirtual

Renders a single frame.

Замещает IRenderer.

◆ waitIdle()

void VulkanRenderer::waitIdle ( )
overridevirtual

Waits for the Vulkan device to become idle.

Замещает IRenderer.


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