mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-21 05:09:34 -06:00
Vulkan: Move clear shader from Renderer to ShaderCache
This commit is contained in:
@ -795,7 +795,19 @@ bool ShaderCache::CompileSharedShaders()
|
||||
}
|
||||
)";
|
||||
|
||||
std::string header = GetUtilityShaderHeader();
|
||||
static const char CLEAR_FRAGMENT_SHADER_SOURCE[] = R"(
|
||||
layout(location = 0) in float3 uv0;
|
||||
layout(location = 1) in float4 col0;
|
||||
layout(location = 0) out float4 ocol0;
|
||||
|
||||
void main()
|
||||
{
|
||||
ocol0 = col0;
|
||||
}
|
||||
|
||||
)";
|
||||
|
||||
const std::string header = GetUtilityShaderHeader();
|
||||
|
||||
m_screen_quad_vertex_shader =
|
||||
Util::CompileAndCreateVertexShader(header + SCREEN_QUAD_VERTEX_SHADER_SOURCE);
|
||||
@ -820,6 +832,11 @@ bool ShaderCache::CompileSharedShaders()
|
||||
}
|
||||
}
|
||||
|
||||
m_clear_fragment_shader =
|
||||
Util::CompileAndCreateFragmentShader(header + CLEAR_FRAGMENT_SHADER_SOURCE);
|
||||
if (m_clear_fragment_shader == VK_NULL_HANDLE)
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -837,5 +854,6 @@ void ShaderCache::DestroySharedShaders()
|
||||
DestroyShader(m_passthrough_vertex_shader);
|
||||
DestroyShader(m_screen_quad_geometry_shader);
|
||||
DestroyShader(m_passthrough_geometry_shader);
|
||||
DestroyShader(m_clear_fragment_shader);
|
||||
}
|
||||
}
|
||||
} // namespace Vulkan
|
||||
|
Reference in New Issue
Block a user