diff options
| author | Pedro J. Estébanez <pedrojrulez@gmail.com> | 2023-08-21 09:52:29 +0200 |
|---|---|---|
| committer | Pedro J. Estébanez <pedrojrulez@gmail.com> | 2023-08-30 12:00:54 +0200 |
| commit | bcf33cfbd19db19e45912eb8421f20a53721cefa (patch) | |
| tree | 1967d4335473777663e84fb04a762096abe6cde6 /drivers/vulkan/rendering_device_vulkan.h | |
| parent | f7c48cf8039d07f113d38cf9115547a75ea1d3c9 (diff) | |
| download | redot-engine-bcf33cfbd19db19e45912eb8421f20a53721cefa.tar.gz | |
Enhance Vulkan PSO caching
Diffstat (limited to 'drivers/vulkan/rendering_device_vulkan.h')
| -rw-r--r-- | drivers/vulkan/rendering_device_vulkan.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/vulkan/rendering_device_vulkan.h b/drivers/vulkan/rendering_device_vulkan.h index edff19a70c..5b28a67cec 100644 --- a/drivers/vulkan/rendering_device_vulkan.h +++ b/drivers/vulkan/rendering_device_vulkan.h @@ -805,8 +805,10 @@ class RenderingDeviceVulkan : public RenderingDevice { }; struct PipelineCache { + String file_path; + PipelineCacheHeader header = {}; size_t current_size = 0; - Vector<uint8_t> buffer; + LocalVector<uint8_t> buffer; VkPipelineCache cache_object = VK_NULL_HANDLE; }; @@ -816,7 +818,7 @@ class RenderingDeviceVulkan : public RenderingDevice { void _load_pipeline_cache(); void _update_pipeline_cache(bool p_closing = false); - void _save_pipeline_cache_threaded(size_t pso_blob_size); + static void _save_pipeline_cache(void *p_data); struct ComputePipeline { RID shader; |
