mirror of
https://github.com/libretro/RetroArch
synced 2025-03-02 19:13:34 +00:00
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:
parent
88ab8ceb24
commit
826ca302ca
@ -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;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user