diff options
Diffstat (limited to 'Source/Core/VideoBackends/Vulkan/Util.cpp')
| -rw-r--r-- | Source/Core/VideoBackends/Vulkan/Util.cpp | 33 |
1 files changed, 11 insertions, 22 deletions
diff --git a/Source/Core/VideoBackends/Vulkan/Util.cpp b/Source/Core/VideoBackends/Vulkan/Util.cpp index dd676d0b6c..f1f4f42b1b 100644 --- a/Source/Core/VideoBackends/Vulkan/Util.cpp +++ b/Source/Core/VideoBackends/Vulkan/Util.cpp @@ -12,6 +12,7 @@ #include "VideoBackends/Vulkan/CommandBufferManager.h" #include "VideoBackends/Vulkan/ObjectCache.h" +#include "VideoBackends/Vulkan/ShaderCache.h" #include "VideoBackends/Vulkan/ShaderCompiler.h" #include "VideoBackends/Vulkan/StateTracker.h" #include "VideoBackends/Vulkan/StreamBuffer.h" @@ -275,50 +276,38 @@ VkShaderModule CreateShaderModule(const u32* spv, size_t spv_word_count) return module; } -VkShaderModule CompileAndCreateVertexShader(const std::string& source_code, bool prepend_header) +VkShaderModule CompileAndCreateVertexShader(const std::string& source_code) { ShaderCompiler::SPIRVCodeVector code; - if (!ShaderCompiler::CompileVertexShader(&code, source_code.c_str(), source_code.length(), - prepend_header)) - { + if (!ShaderCompiler::CompileVertexShader(&code, source_code.c_str(), source_code.length())) return VK_NULL_HANDLE; - } return CreateShaderModule(code.data(), code.size()); } -VkShaderModule CompileAndCreateGeometryShader(const std::string& source_code, bool prepend_header) +VkShaderModule CompileAndCreateGeometryShader(const std::string& source_code) { ShaderCompiler::SPIRVCodeVector code; - if (!ShaderCompiler::CompileGeometryShader(&code, source_code.c_str(), source_code.length(), - prepend_header)) - { + if (!ShaderCompiler::CompileGeometryShader(&code, source_code.c_str(), source_code.length())) return VK_NULL_HANDLE; - } return CreateShaderModule(code.data(), code.size()); } -VkShaderModule CompileAndCreateFragmentShader(const std::string& source_code, bool prepend_header) +VkShaderModule CompileAndCreateFragmentShader(const std::string& source_code) { ShaderCompiler::SPIRVCodeVector code; - if (!ShaderCompiler::CompileFragmentShader(&code, source_code.c_str(), source_code.length(), - prepend_header)) - { + if (!ShaderCompiler::CompileFragmentShader(&code, source_code.c_str(), source_code.length())) return VK_NULL_HANDLE; - } return CreateShaderModule(code.data(), code.size()); } -VkShaderModule CompileAndCreateComputeShader(const std::string& source_code, bool prepend_header) +VkShaderModule CompileAndCreateComputeShader(const std::string& source_code) { ShaderCompiler::SPIRVCodeVector code; - if (!ShaderCompiler::CompileComputeShader(&code, source_code.c_str(), source_code.length(), - prepend_header)) - { + if (!ShaderCompiler::CompileComputeShader(&code, source_code.c_str(), source_code.length())) return VK_NULL_HANDLE; - } return CreateShaderModule(code.data(), code.size()); } @@ -732,7 +721,7 @@ void UtilityShaderDraw::BindDescriptors() bool UtilityShaderDraw::BindPipeline() { - VkPipeline pipeline = g_object_cache->GetPipeline(m_pipeline_info); + VkPipeline pipeline = g_shader_cache->GetPipeline(m_pipeline_info); if (pipeline == VK_NULL_HANDLE) { PanicAlert("Failed to get pipeline for backend shader draw"); @@ -885,7 +874,7 @@ void ComputeShaderDispatcher::BindDescriptors() bool ComputeShaderDispatcher::BindPipeline() { - VkPipeline pipeline = g_object_cache->GetComputePipeline(m_pipeline_info); + VkPipeline pipeline = g_shader_cache->GetComputePipeline(m_pipeline_info); if (pipeline == VK_NULL_HANDLE) { PanicAlert("Failed to get pipeline for backend compute dispatch"); |
