![]() |
Rendering Engine 0.2.0
Modular Graphics Rendering Engine | v0.2.0
|
Vulkan-specific implementation of material render resources. More...
#include <vulkan_material_resources.hpp>
Inherits rendering_engine::IMaterialRenderResources.
Public Member Functions | |
| VulkanMaterialResources (VulkanRenderer *renderer) | |
| Constructs a VulkanMaterialResources instance. | |
| void | Initialize (Material *material) override |
| Initializes Vulkan-specific GPU resources for the material. | |
| void | Shutdown () override |
| Releases all Vulkan GPU resources associated with this material. | |
| VkDescriptorSetLayout | GetDescriptorSetLayout () const |
| Gets the Vulkan descriptor set layout for the material. | |
| VkPipelineLayout | GetPipelineLayout () const |
| Gets the Vulkan pipeline layout used by the material. | |
| VkPipeline | GetPipeline () const |
| Gets the Vulkan graphics pipeline used by the material. | |
| Public Member Functions inherited from rendering_engine::IMaterialRenderResources | |
| virtual | ~IMaterialRenderResources ()=default |
Vulkan-specific implementation of material render resources.
This class manages Vulkan GPU resources required to render a specific Material. It provides access to the Vulkan descriptor set layout, pipeline layout, and graphics pipeline associated with a given material. The resource creation is delegated to the owning VulkanRenderer instance.
The Material class calls Initialize and Shutdown to manage the lifecycle of these resources.
Definition at line 28 of file vulkan_material_resources.hpp.
| rendering_engine::VulkanMaterialResources::VulkanMaterialResources | ( | VulkanRenderer * | renderer | ) |
Constructs a VulkanMaterialResources instance.
| renderer | Pointer to the VulkanRenderer that provides creation utilities. |
Definition at line 9 of file vulkan_material_resources.cpp.
| VkDescriptorSetLayout rendering_engine::VulkanMaterialResources::GetDescriptorSetLayout | ( | ) | const |
Gets the Vulkan descriptor set layout for the material.
Definition at line 54 of file vulkan_material_resources.cpp.
| VkPipeline rendering_engine::VulkanMaterialResources::GetPipeline | ( | ) | const |
Gets the Vulkan graphics pipeline used by the material.
Definition at line 64 of file vulkan_material_resources.cpp.
| VkPipelineLayout rendering_engine::VulkanMaterialResources::GetPipelineLayout | ( | ) | const |
Gets the Vulkan pipeline layout used by the material.
Definition at line 59 of file vulkan_material_resources.cpp.
|
overridevirtual |
Initializes Vulkan-specific GPU resources for the material.
Loads compiled SPIR-V shader binaries and creates descriptor set layout and pipeline.
| material | Pointer to the owning Material instance. |
Implements rendering_engine::IMaterialRenderResources.
Definition at line 14 of file vulkan_material_resources.cpp.
|
overridevirtual |
Releases all Vulkan GPU resources associated with this material.
This should be called when the renderer shuts down or resources are rebuilt.
Implements rendering_engine::IMaterialRenderResources.
Definition at line 45 of file vulkan_material_resources.cpp.