summaryrefslogtreecommitdiffstats
path: root/drivers/vulkan/rendering_device_vulkan.h
diff options
context:
space:
mode:
authorPedro J. Estébanez <pedrojrulez@gmail.com>2023-08-21 09:52:29 +0200
committerPedro J. Estébanez <pedrojrulez@gmail.com>2023-08-30 12:00:54 +0200
commitbcf33cfbd19db19e45912eb8421f20a53721cefa (patch)
tree1967d4335473777663e84fb04a762096abe6cde6 /drivers/vulkan/rendering_device_vulkan.h
parentf7c48cf8039d07f113d38cf9115547a75ea1d3c9 (diff)
downloadredot-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.h6
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;