mirror of
https://github.com/libretro/RetroArch
synced 2025-03-29 22:20:21 +00:00
(D3D10/D3D11/D3D12) Get rid of save_hlsl codepath when loading
shaders (and they fail), or debug mode
This commit is contained in:
parent
3c6098dff7
commit
6a537a656d
@ -458,11 +458,6 @@ static bool d3d10_gfx_set_shader(void* data, enum rarch_shader_type type, const
|
||||
{ "TEXCOORD", 1, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d10_vertex_t, texcoord),
|
||||
D3D10_INPUT_PER_VERTEX_DATA, 0 },
|
||||
};
|
||||
#ifdef DEBUG
|
||||
bool save_hlsl = true;
|
||||
#else
|
||||
bool save_hlsl = false;
|
||||
#endif
|
||||
static const char vs_ext[] = ".vs.hlsl";
|
||||
static const char ps_ext[] = ".ps.hlsl";
|
||||
char vs_path[PATH_MAX_LENGTH] = {0};
|
||||
@ -478,24 +473,11 @@ static bool d3d10_gfx_set_shader(void* data, enum rarch_shader_type type, const
|
||||
|
||||
if (!d3d10_init_shader(
|
||||
d3d10->device, vs_src, 0, vs_path, "main", NULL, NULL, desc, countof(desc),
|
||||
&d3d10->pass[i].shader))
|
||||
save_hlsl = true;
|
||||
&d3d10->pass[i].shader)) { }
|
||||
|
||||
if (!d3d10_init_shader(
|
||||
d3d10->device, ps_src, 0, ps_path, NULL, "main", NULL, NULL, 0,
|
||||
&d3d10->pass[i].shader))
|
||||
save_hlsl = true;
|
||||
|
||||
if (save_hlsl)
|
||||
{
|
||||
FILE* fp = fopen(vs_path, "w");
|
||||
fwrite(vs_src, 1, strlen(vs_src), fp);
|
||||
fclose(fp);
|
||||
|
||||
fp = fopen(ps_path, "w");
|
||||
fwrite(ps_src, 1, strlen(ps_src), fp);
|
||||
fclose(fp);
|
||||
}
|
||||
&d3d10->pass[i].shader)) { }
|
||||
|
||||
free(d3d10->shader_preset->pass[i].source.string.vertex);
|
||||
free(d3d10->shader_preset->pass[i].source.string.fragment);
|
||||
|
@ -626,11 +626,6 @@ static bool d3d11_gfx_set_shader(void* data, enum rarch_shader_type type, const
|
||||
{ "TEXCOORD", 1, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d11_vertex_t, texcoord),
|
||||
D3D11_INPUT_PER_VERTEX_DATA, 0 },
|
||||
};
|
||||
#ifdef DEBUG
|
||||
bool save_hlsl = true;
|
||||
#else
|
||||
bool save_hlsl = false;
|
||||
#endif
|
||||
static const char vs_ext[] = ".vs.hlsl";
|
||||
static const char ps_ext[] = ".ps.hlsl";
|
||||
char vs_path[PATH_MAX_LENGTH] = {0};
|
||||
@ -648,26 +643,13 @@ static bool d3d11_gfx_set_shader(void* data, enum rarch_shader_type type, const
|
||||
d3d11->device, vs_src, 0, vs_path, "main", NULL, NULL, desc, countof(desc),
|
||||
&d3d11->pass[i].shader,
|
||||
feat_level_hint
|
||||
))
|
||||
save_hlsl = true;
|
||||
)) { }
|
||||
|
||||
if (!d3d11_init_shader(
|
||||
d3d11->device, ps_src, 0, ps_path, NULL, "main", NULL, NULL, 0,
|
||||
&d3d11->pass[i].shader,
|
||||
feat_level_hint
|
||||
))
|
||||
save_hlsl = true;
|
||||
|
||||
if (save_hlsl)
|
||||
{
|
||||
FILE* fp = fopen(vs_path, "w");
|
||||
fwrite(vs_src, 1, strlen(vs_src), fp);
|
||||
fclose(fp);
|
||||
|
||||
fp = fopen(ps_path, "w");
|
||||
fwrite(ps_src, 1, strlen(ps_src), fp);
|
||||
fclose(fp);
|
||||
}
|
||||
)) { }
|
||||
|
||||
free(d3d11->shader_preset->pass[i].source.string.vertex);
|
||||
free(d3d11->shader_preset->pass[i].source.string.fragment);
|
||||
|
@ -579,11 +579,6 @@ static bool d3d12_gfx_set_shader(void* data, enum rarch_shader_type type, const
|
||||
{ "TEXCOORD", 1, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d12_vertex_t, texcoord),
|
||||
D3D12_INPUT_CLASSIFICATION_PER_VERTEX_DATA, 0 },
|
||||
};
|
||||
#ifdef DEBUG
|
||||
bool save_hlsl = true;
|
||||
#else
|
||||
bool save_hlsl = false;
|
||||
#endif
|
||||
static const char vs_ext[] = ".vs.hlsl";
|
||||
static const char ps_ext[] = ".ps.hlsl";
|
||||
char vs_path[PATH_MAX_LENGTH] = {0};
|
||||
@ -597,10 +592,8 @@ static bool d3d12_gfx_set_shader(void* data, enum rarch_shader_type type, const
|
||||
strlcat(vs_path, vs_ext, sizeof(vs_path));
|
||||
strlcat(ps_path, ps_ext, sizeof(ps_path));
|
||||
|
||||
if (!d3d_compile(vs_src, 0, vs_path, "main", "vs_5_0", &vs_code))
|
||||
save_hlsl = true;
|
||||
if (!d3d_compile(ps_src, 0, ps_path, "main", "ps_5_0", &ps_code))
|
||||
save_hlsl = true;
|
||||
if (!d3d_compile(vs_src, 0, vs_path,"main","vs_5_0", &vs_code)){ }
|
||||
if (!d3d_compile(ps_src, 0, ps_path,"main","ps_5_0", &ps_code)){ }
|
||||
|
||||
desc.BlendState.RenderTarget[0].RenderTargetWriteMask = D3D12_COLOR_WRITE_ENABLE_ALL;
|
||||
if (i == d3d12->shader_preset->passes - 1)
|
||||
@ -613,19 +606,7 @@ static bool d3d12_gfx_set_shader(void* data, enum rarch_shader_type type, const
|
||||
desc.InputLayout.NumElements = countof(inputElementDesc);
|
||||
|
||||
if (!d3d12_init_pipeline(
|
||||
d3d12->device, vs_code, ps_code, NULL, &desc, &d3d12->pass[i].pipe))
|
||||
save_hlsl = true;
|
||||
|
||||
if (save_hlsl)
|
||||
{
|
||||
FILE* fp = fopen(vs_path, "w");
|
||||
fwrite(vs_src, 1, strlen(vs_src), fp);
|
||||
fclose(fp);
|
||||
|
||||
fp = fopen(ps_path, "w");
|
||||
fwrite(ps_src, 1, strlen(ps_src), fp);
|
||||
fclose(fp);
|
||||
}
|
||||
d3d12->device, vs_code, ps_code, NULL, &desc, &d3d12->pass[i].pipe)) { }
|
||||
|
||||
free(d3d12->shader_preset->pass[i].source.string.vertex);
|
||||
free(d3d12->shader_preset->pass[i].source.string.fragment);
|
||||
|
Loading…
x
Reference in New Issue
Block a user