![]() |
Plasma Engine
2.0
|
Creates and caches persistent Vulkan resources. Resources are never freed until the device is shut down. More...
#include <ResourceCacheVulkan.h>
Classes | |
struct | ComputePipelineDesc |
struct | DescriptorSetLayoutDesc |
struct | GraphicsPipelineDesc |
struct | PipelineLayoutDesc |
Public Types | |
using | GraphicsPipelineMap = plMap<plResourceCacheVulkan::GraphicsPipelineDesc, vk::Pipeline, plResourceCacheVulkan::ResourceCacheHash> |
using | ComputePipelineMap = plMap<plResourceCacheVulkan::ComputePipelineDesc, vk::Pipeline, plResourceCacheVulkan::ResourceCacheHash> |
Static Public Member Functions | |
static void | Initialize (plGALDeviceVulkan *pDevice, vk::Device device) |
static void | DeInitialize () |
static vk::RenderPass | RequestRenderPass (const plGALRenderingSetup &renderingSetup) |
static vk::Framebuffer | RequestFrameBuffer (vk::RenderPass renderPass, const plGALRenderTargetSetup &renderTargetSetup, plSizeU32 &out_Size, plEnum< plGALMSAASampleCount > &out_msaa, plUInt32 &out_uiLayers) |
static vk::PipelineLayout | RequestPipelineLayout (const PipelineLayoutDesc &desc) |
static vk::Pipeline | RequestGraphicsPipeline (const GraphicsPipelineDesc &desc) |
static vk::Pipeline | RequestComputePipeline (const ComputePipelineDesc &desc) |
static vk::DescriptorSetLayout | RequestDescriptorSetLayout (const plGALShaderVulkan::DescriptorSetLayoutDesc &desc) |
static void | ResourceDeleted (const plRefCounted *pResource) |
Invalidates any caches that use this resource. Basically all pointer types in GraphicsPipelineDesc except for plGALShaderVulkan. | |
static void | ShaderDeleted (const plGALShaderVulkan *pShader) |
Invalidates any caches that use this shader resource. | |
Creates and caches persistent Vulkan resources. Resources are never freed until the device is shut down.