summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/Vulkan/VKShader.cpp
diff options
context:
space:
mode:
authorLioncash <mathew1800@gmail.com>2019-05-30 03:07:40 -0400
committerLioncash <mathew1800@gmail.com>2019-05-30 03:29:35 -0400
commite60268bd4274de510f5214d6eedafba30a253984 (patch)
treeb61f50ed4f35058192ab5d06ecada979edf1f1dc /Source/Core/VideoBackends/Vulkan/VKShader.cpp
parent80d8173d29749b13ccdf84e75641e179ea34768b (diff)
VideoCommon/RenderBase: Use a std::string_view with CreateShaderFromSource()
Greatly simplifies the overall interface when it comes to compiling shaders. Also allows getting rid of a std::string overload of the same name. Now std::string and const char* both go through the same function.
Diffstat (limited to 'Source/Core/VideoBackends/Vulkan/VKShader.cpp')
-rw-r--r--Source/Core/VideoBackends/Vulkan/VKShader.cpp11
1 files changed, 5 insertions, 6 deletions
diff --git a/Source/Core/VideoBackends/Vulkan/VKShader.cpp b/Source/Core/VideoBackends/Vulkan/VKShader.cpp
index 4308660ae6..15fc90f61f 100644
--- a/Source/Core/VideoBackends/Vulkan/VKShader.cpp
+++ b/Source/Core/VideoBackends/Vulkan/VKShader.cpp
@@ -86,24 +86,23 @@ static std::unique_ptr<VKShader> CreateShaderObject(ShaderStage stage,
return std::make_unique<VKShader>(std::move(spv), pipeline);
}
-std::unique_ptr<VKShader> VKShader::CreateFromSource(ShaderStage stage, const char* source,
- size_t length)
+std::unique_ptr<VKShader> VKShader::CreateFromSource(ShaderStage stage, std::string_view source)
{
ShaderCompiler::SPIRVCodeVector spv;
bool result;
switch (stage)
{
case ShaderStage::Vertex:
- result = ShaderCompiler::CompileVertexShader(&spv, source, length);
+ result = ShaderCompiler::CompileVertexShader(&spv, source);
break;
case ShaderStage::Geometry:
- result = ShaderCompiler::CompileGeometryShader(&spv, source, length);
+ result = ShaderCompiler::CompileGeometryShader(&spv, source);
break;
case ShaderStage::Pixel:
- result = ShaderCompiler::CompileFragmentShader(&spv, source, length);
+ result = ShaderCompiler::CompileFragmentShader(&spv, source);
break;
case ShaderStage::Compute:
- result = ShaderCompiler::CompileComputeShader(&spv, source, length);
+ result = ShaderCompiler::CompileComputeShader(&spv, source);
break;
default:
result = false;