video_shader_get_type_from_ext - the switch now covers the APIs

that support the shader type, not the ones that don't
This commit is contained in:
twinaphex 2018-02-26 19:04:01 +01:00
parent 88ab8ceb24
commit 826ca302ca

View File

@ -1110,109 +1110,87 @@ bool video_shader_any_supported(void)
enum rarch_shader_type video_shader_get_type_from_ext(
const char *ext, bool *is_preset)
{
enum gfx_ctx_api api = video_context_driver_get_api();
enum gfx_ctx_api api = video_context_driver_get_api();
*is_preset = false;
*is_preset = false;
if (string_is_equal_noncase(ext, "cg"))
{
switch (api)
{
case GFX_CTX_DIRECT3D8_API:
case GFX_CTX_DIRECT3D10_API:
case GFX_CTX_DIRECT3D11_API:
case GFX_CTX_DIRECT3D12_API:
case GFX_CTX_VULKAN_API:
return RARCH_SHADER_NONE;
case GFX_CTX_DIRECT3D9_API:
case GFX_CTX_OPENGL_API:
case GFX_CTX_OPENGL_ES_API:
return RARCH_SHADER_CG;
default:
break;
}
return RARCH_SHADER_CG;
}
if (string_is_equal_noncase(ext, "cgp"))
{
*is_preset = true;
switch (api)
{
case GFX_CTX_DIRECT3D8_API:
case GFX_CTX_DIRECT3D10_API:
case GFX_CTX_DIRECT3D11_API:
case GFX_CTX_DIRECT3D12_API:
case GFX_CTX_VULKAN_API:
return RARCH_SHADER_NONE;
case GFX_CTX_DIRECT3D9_API:
case GFX_CTX_OPENGL_API:
case GFX_CTX_OPENGL_ES_API:
return RARCH_SHADER_CG;
default:
break;
}
return RARCH_SHADER_CG;
}
if (string_is_equal_noncase(ext, "glsl"))
{
switch (api)
{
case GFX_CTX_DIRECT3D8_API:
case GFX_CTX_DIRECT3D9_API:
case GFX_CTX_DIRECT3D10_API:
case GFX_CTX_DIRECT3D11_API:
case GFX_CTX_DIRECT3D12_API:
case GFX_CTX_VULKAN_API:
return RARCH_SHADER_NONE;
case GFX_CTX_OPENGL_API:
case GFX_CTX_OPENGL_ES_API:
return RARCH_SHADER_GLSL;
default:
break;
}
return RARCH_SHADER_GLSL;
}
if (string_is_equal_noncase(ext, "glslp"))
{
*is_preset = true;
switch (api)
{
case GFX_CTX_DIRECT3D8_API:
case GFX_CTX_DIRECT3D9_API:
case GFX_CTX_DIRECT3D10_API:
case GFX_CTX_DIRECT3D11_API:
case GFX_CTX_DIRECT3D12_API:
case GFX_CTX_VULKAN_API:
return RARCH_SHADER_NONE;
case GFX_CTX_OPENGL_API:
case GFX_CTX_OPENGL_ES_API:
return RARCH_SHADER_GLSL;
default:
break;
}
return RARCH_SHADER_GLSL;
}
if (string_is_equal_noncase(ext, "slang"))
{
/* TODO/FIXME - once the OpenGL/Direct3D9 drivers
* have slang support, we can get rid of this */
switch (api)
{
case GFX_CTX_OPENGL_API:
case GFX_CTX_OPENGL_ES_API:
case GFX_CTX_DIRECT3D8_API:
case GFX_CTX_DIRECT3D9_API:
return RARCH_SHADER_NONE;
case GFX_CTX_DIRECT3D11_API:
case GFX_CTX_DIRECT3D12_API:
case GFX_CTX_GX2_API:
case GFX_CTX_VULKAN_API:
return RARCH_SHADER_SLANG;
default:
break;
}
return RARCH_SHADER_SLANG;
}
if (string_is_equal_noncase(ext, "slangp"))
{
*is_preset = true;
/* TODO/FIXME - once the OpenGL/Direct3D9 drivers
* have slang support, we can get rid of these conditionals */
switch (api)
{
case GFX_CTX_OPENGL_API:
case GFX_CTX_OPENGL_ES_API:
case GFX_CTX_DIRECT3D8_API:
case GFX_CTX_DIRECT3D9_API:
return RARCH_SHADER_NONE;
case GFX_CTX_DIRECT3D11_API:
case GFX_CTX_DIRECT3D12_API:
case GFX_CTX_GX2_API:
case GFX_CTX_VULKAN_API:
return RARCH_SHADER_SLANG;
default:
break;
}
return RARCH_SHADER_SLANG;
}
return RARCH_SHADER_NONE;
}