GPU: Drop OpenGL ES renderer

We can put this through the normal GL renderer instead.
This commit is contained in:
Connor McLaughlin
2020-04-11 00:00:10 +10:00
parent fbfd838e22
commit 6775100170
9 changed files with 15 additions and 769 deletions

View File

@ -9,8 +9,7 @@ GPU_HW_ShaderGen::GPU_HW_ShaderGen(HostDisplay::RenderAPI render_api, u32 resolu
bool scaled_dithering, bool texture_filtering, bool supports_dual_source_blend)
: m_render_api(render_api), m_resolution_scale(resolution_scale), m_true_color(true_color),
m_scaled_dithering(scaled_dithering), m_texture_filering(texture_filtering),
m_glsl(render_api != HostDisplay::RenderAPI::D3D11), m_glsl_es(render_api == HostDisplay::RenderAPI::OpenGLES),
m_supports_dual_source_blend(supports_dual_source_blend)
m_glsl(render_api != HostDisplay::RenderAPI::D3D11), m_supports_dual_source_blend(supports_dual_source_blend)
{
if (m_glsl)
SetGLSLVersionString();
@ -26,6 +25,7 @@ static void DefineMacro(std::stringstream& ss, const char* name, bool enabled)
void GPU_HW_ShaderGen::SetGLSLVersionString()
{
const char* glsl_version = reinterpret_cast<const char*>(glGetString(GL_SHADING_LANGUAGE_VERSION));
const bool glsl_es = (m_render_api == HostDisplay::RenderAPI::OpenGLES);
Assert(glsl_version != nullptr);
// Skip any strings in front of the version code.
@ -37,12 +37,12 @@ void GPU_HW_ShaderGen::SetGLSLVersionString()
if (std::sscanf(glsl_version_start, "%d.%d", &major_version, &minor_version) == 2)
{
// Cap at GLSL 3.3, we're not using anything newer for now.
if (!m_glsl_es && major_version >= 4)
if (!glsl_es && major_version >= 4)
{
major_version = 3;
minor_version = 30;
}
else if (m_glsl_es && (major_version > 3 || minor_version > 20))
else if (glsl_es && (major_version > 3 || minor_version > 20))
{
major_version = 3;
minor_version = 20;
@ -51,17 +51,17 @@ void GPU_HW_ShaderGen::SetGLSLVersionString()
else
{
Log_ErrorPrintf("Invalid GLSL version string: '%s' ('%s')", glsl_version, glsl_version_start);
if (m_glsl_es)
if (glsl_es)
{
major_version = 3;
minor_version = 0;
}
m_glsl_version_string = m_glsl_es ? "300" : "130";
m_glsl_version_string = glsl_es ? "300" : "130";
}
char buf[128];
std::snprintf(buf, sizeof(buf), "#version %d%02d%s", major_version, minor_version,
(m_glsl_es && major_version >= 3) ? " es" : "");
(glsl_es && major_version >= 3) ? " es" : "");
m_glsl_version_string = buf;
}
@ -178,23 +178,15 @@ float4 RGBA5551ToRGBA8(uint v)
void GPU_HW_ShaderGen::DeclareUniformBuffer(std::stringstream& ss, const std::initializer_list<const char*>& members)
{
if (m_glsl_es)
{
for (const char* member : members)
ss << "uniform " << member << ";\n";
}
if (m_glsl)
ss << "layout(std140) uniform UBOBlock\n";
else
{
if (m_glsl)
ss << "layout(std140) uniform UBOBlock\n";
else
ss << "cbuffer UBOBlock : register(b0)\n";
ss << "cbuffer UBOBlock : register(b0)\n";
ss << "{\n";
for (const char* member : members)
ss << member << ";\n";
ss << "};\n\n";
}
ss << "{\n";
for (const char* member : members)
ss << member << ";\n";
ss << "};\n\n";
}
void GPU_HW_ShaderGen::DeclareTexture(std::stringstream& ss, const char* name, u32 index)