summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/Vulkan/ObjectCache.h
diff options
context:
space:
mode:
authorStenzek <stenzek@users.noreply.github.com>2017-04-28 22:50:14 +1000
committerGitHub <noreply@github.com>2017-04-28 22:50:14 +1000
commit68ee4fc932ddff320f535b6054ceff0c58348b64 (patch)
tree937bda8967539f3dfbc15133b9e78fbfba4a555c /Source/Core/VideoBackends/Vulkan/ObjectCache.h
parentf2035384e5e03ec86abefeb7ab24fa1fc3dd8f39 (diff)
parent27ae5b8d34675244af689b260f0dbb391bb6209e (diff)
Merge pull request #5296 from stenzek/vulkan-postprocessing
Vulkan: Implement support for post-processing
Diffstat (limited to 'Source/Core/VideoBackends/Vulkan/ObjectCache.h')
-rw-r--r--Source/Core/VideoBackends/Vulkan/ObjectCache.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/Source/Core/VideoBackends/Vulkan/ObjectCache.h b/Source/Core/VideoBackends/Vulkan/ObjectCache.h
index ac2fe7e962..97c457a7f8 100644
--- a/Source/Core/VideoBackends/Vulkan/ObjectCache.h
+++ b/Source/Core/VideoBackends/Vulkan/ObjectCache.h
@@ -137,6 +137,13 @@ public:
// Find a pipeline by the specified description, if not found, attempts to create it
VkPipeline GetComputePipeline(const ComputePipelineInfo& info);
+ // Clears our pipeline cache of all objects. This is necessary when recompiling shaders,
+ // as drivers are free to return the same pointer again, which means that we may end up using
+ // and old pipeline object if they are not cleared first. Some stutter may be experienced
+ // while our cache is rebuilt on use, but the pipeline cache object should mitigate this.
+ // NOTE: Ensure that none of these objects are in use before calling.
+ void ClearPipelineCache();
+
// Saves the pipeline cache to disk. Call when shutting down.
void SavePipelineCache();