Fix more warnings

This commit is contained in:
twinaphex 2018-02-04 21:12:42 +01:00
parent 9dd33b9797
commit 028fc18294
4 changed files with 93 additions and 88 deletions

View File

@ -84,7 +84,7 @@ void d3d10_init_texture(D3D10Device device, d3d10_texture_t* texture)
D3D10CreateTexture2D(device, &texture->desc, NULL, &texture->handle); D3D10CreateTexture2D(device, &texture->desc, NULL, &texture->handle);
{ {
D3D10_SHADER_RESOURCE_VIEW_DESC view_desc = {}; D3D10_SHADER_RESOURCE_VIEW_DESC view_desc = { DXGI_FORMAT_UNKNOWN };
view_desc.Format = texture->desc.Format; view_desc.Format = texture->desc.Format;
view_desc.ViewDimension = D3D_SRV_DIMENSION_TEXTURE2D; view_desc.ViewDimension = D3D_SRV_DIMENSION_TEXTURE2D;
view_desc.Texture2D.MostDetailedMip = 0; view_desc.Texture2D.MostDetailedMip = 0;
@ -134,7 +134,7 @@ void d3d10_update_texture(
texture->dirty = true; texture->dirty = true;
} }
DXGI_FORMAT DXGI_FORMAT
d3d10_get_closest_match(D3D10Device device, d3d10_get_closest_match(D3D10Device device,
DXGI_FORMAT desired_format, UINT desired_format_support) DXGI_FORMAT desired_format, UINT desired_format_support)
{ {
@ -148,7 +148,7 @@ d3d10_get_closest_match(D3D10Device device,
{ {
UINT format_support; UINT format_support;
if (SUCCEEDED(D3D10CheckFormatSupport(device, *format, &format_support)) && if (SUCCEEDED(D3D10CheckFormatSupport(device, *format, &format_support)) &&
((format_support & desired_format_support) == desired_format_support)) ((format_support & desired_format_support) == desired_format_support))
break; break;
format++; format++;
} }

View File

@ -72,7 +72,7 @@ void d3d11_init_texture(D3D11Device device, d3d11_texture_t* texture)
texture->desc.SampleDesc.Quality = 0; texture->desc.SampleDesc.Quality = 0;
texture->desc.BindFlags |= D3D11_BIND_SHADER_RESOURCE; texture->desc.BindFlags |= D3D11_BIND_SHADER_RESOURCE;
texture->desc.CPUAccessFlags = texture->desc.CPUAccessFlags =
texture->desc.Usage == D3D11_USAGE_DYNAMIC ? D3D11_CPU_ACCESS_WRITE : 0; texture->desc.Usage == D3D11_USAGE_DYNAMIC ? D3D11_CPU_ACCESS_WRITE : 0;
if (texture->desc.MiscFlags & D3D11_RESOURCE_MISC_GENERATE_MIPS) if (texture->desc.MiscFlags & D3D11_RESOURCE_MISC_GENERATE_MIPS)
{ {
@ -95,7 +95,7 @@ void d3d11_init_texture(D3D11Device device, d3d11_texture_t* texture)
D3D11CreateTexture2D(device, &texture->desc, NULL, &texture->handle); D3D11CreateTexture2D(device, &texture->desc, NULL, &texture->handle);
{ {
D3D11_SHADER_RESOURCE_VIEW_DESC view_desc = {}; D3D11_SHADER_RESOURCE_VIEW_DESC view_desc = { DXGI_FORMAT_UNKNOWN };
view_desc.Format = texture->desc.Format; view_desc.Format = texture->desc.Format;
view_desc.ViewDimension = D3D_SRV_DIMENSION_TEXTURE2D; view_desc.ViewDimension = D3D_SRV_DIMENSION_TEXTURE2D;
view_desc.Texture2D.MostDetailedMip = 0; view_desc.Texture2D.MostDetailedMip = 0;
@ -149,7 +149,7 @@ void d3d11_update_texture(
D3D11GenerateMips(ctx, texture->view); D3D11GenerateMips(ctx, texture->view);
} }
DXGI_FORMAT DXGI_FORMAT
d3d11_get_closest_match(D3D11Device device, DXGI_FORMAT desired_format, UINT desired_format_support) d3d11_get_closest_match(D3D11Device device, DXGI_FORMAT desired_format, UINT desired_format_support)
{ {
DXGI_FORMAT default_list[] = {desired_format, DXGI_FORMAT_UNKNOWN}; DXGI_FORMAT default_list[] = {desired_format, DXGI_FORMAT_UNKNOWN};
@ -162,7 +162,7 @@ d3d11_get_closest_match(D3D11Device device, DXGI_FORMAT desired_format, UINT des
{ {
UINT format_support; UINT format_support;
if (SUCCEEDED(D3D11CheckFormatSupport(device, *format, &format_support)) && if (SUCCEEDED(D3D11CheckFormatSupport(device, *format, &format_support)) &&
((format_support & desired_format_support) == desired_format_support)) ((format_support & desired_format_support) == desired_format_support))
break; break;
format++; format++;
} }

View File

@ -73,7 +73,7 @@ static void d3d10_update_viewport(void* data, bool force_full)
d3d10->resize_viewport = false; d3d10->resize_viewport = false;
} }
static void* static void*
d3d10_gfx_init(const video_info_t* video, const input_driver_t** input, void** input_data) d3d10_gfx_init(const video_info_t* video, const input_driver_t** input, void** input_data)
{ {
WNDCLASSEX wndclass = { 0 }; WNDCLASSEX wndclass = { 0 };
@ -158,7 +158,7 @@ d3d10_gfx_init(const video_info_t* video, const input_driver_t** input, void** i
d3d10->format = video->rgb32 ? DXGI_FORMAT_B8G8R8X8_UNORM : DXGI_FORMAT_B5G6R5_UNORM; d3d10->format = video->rgb32 ? DXGI_FORMAT_B8G8R8X8_UNORM : DXGI_FORMAT_B5G6R5_UNORM;
d3d10->frame.texture.desc.Format = d3d10->frame.texture.desc.Format =
d3d10_get_closest_match_texture2D(d3d10->device, d3d10->format); d3d10_get_closest_match_texture2D(d3d10->device, d3d10->format);
d3d10->frame.texture.desc.Usage = D3D10_USAGE_DEFAULT; d3d10->frame.texture.desc.Usage = D3D10_USAGE_DEFAULT;
d3d10->menu.texture.desc.Usage = D3D10_USAGE_DEFAULT; d3d10->menu.texture.desc.Usage = D3D10_USAGE_DEFAULT;
@ -179,17 +179,22 @@ d3d10_gfx_init(const video_info_t* video, const input_driver_t** input, void** i
d3d10_gfx_set_rotation(d3d10, 0); d3d10_gfx_set_rotation(d3d10, 0);
{ {
D3D10_SAMPLER_DESC desc = {}; unsigned k;
D3D10_SAMPLER_DESC desc;
desc.Filter = D3D10_FILTER_MIN_MAG_MIP_POINT; desc.Filter = D3D10_FILTER_MIN_MAG_MIP_POINT;
desc.AddressU = D3D10_TEXTURE_ADDRESS_BORDER; desc.AddressU = D3D10_TEXTURE_ADDRESS_BORDER;
desc.AddressV = D3D10_TEXTURE_ADDRESS_BORDER; desc.AddressV = D3D10_TEXTURE_ADDRESS_BORDER;
desc.AddressW = D3D10_TEXTURE_ADDRESS_BORDER; desc.AddressW = D3D10_TEXTURE_ADDRESS_BORDER;
desc.MipLODBias = 0.0f;
desc.MaxAnisotropy = 1; desc.MaxAnisotropy = 1;
desc.ComparisonFunc = D3D10_COMPARISON_NEVER; desc.ComparisonFunc = D3D10_COMPARISON_NEVER;
desc.MinLOD = -D3D10_FLOAT32_MAX; desc.MinLOD = -D3D10_FLOAT32_MAX;
desc.MaxLOD = D3D10_FLOAT32_MAX; desc.MaxLOD = D3D10_FLOAT32_MAX;
for (k = 0; k < 4; k++)
desc.BorderColor[k] = 0.0f;
D3D10CreateSamplerState(d3d10->device, &desc, &d3d10->sampler_nearest); D3D10CreateSamplerState(d3d10->device, &desc, &d3d10->sampler_nearest);
desc.Filter = D3D10_FILTER_MIN_MAG_MIP_LINEAR; desc.Filter = D3D10_FILTER_MIN_MAG_MIP_LINEAR;
@ -228,15 +233,15 @@ d3d10_gfx_init(const video_info_t* video, const input_driver_t** input, void** i
static const char stock[] = static const char stock[] =
#include "d3d_shaders/opaque_sm5.hlsl.h" #include "d3d_shaders/opaque_sm5.hlsl.h"
; ;
D3D10_INPUT_ELEMENT_DESC desc[] = { D3D10_INPUT_ELEMENT_DESC desc[] = {
{ "POSITION", 0, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d10_vertex_t, position), { "POSITION", 0, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d10_vertex_t, position),
D3D10_INPUT_PER_VERTEX_DATA, 0 }, D3D10_INPUT_PER_VERTEX_DATA, 0 },
{ "TEXCOORD", 0, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d10_vertex_t, texcoord), { "TEXCOORD", 0, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d10_vertex_t, texcoord),
D3D10_INPUT_PER_VERTEX_DATA, 0 }, D3D10_INPUT_PER_VERTEX_DATA, 0 },
{ "COLOR", 0, DXGI_FORMAT_R32G32B32A32_FLOAT, 0, offsetof(d3d10_vertex_t, color), { "COLOR", 0, DXGI_FORMAT_R32G32B32A32_FLOAT, 0, offsetof(d3d10_vertex_t, color),
D3D10_INPUT_PER_VERTEX_DATA, 0 }, D3D10_INPUT_PER_VERTEX_DATA, 0 },
}; };
d3d_compile(stock, sizeof(stock), NULL, "VSMain", "vs_4_0", &vs_code); d3d_compile(stock, sizeof(stock), NULL, "VSMain", "vs_4_0", &vs_code);
@ -340,9 +345,9 @@ static bool d3d10_gfx_frame(
UINT stride = sizeof(d3d10_vertex_t); UINT stride = sizeof(d3d10_vertex_t);
UINT offset = 0; UINT offset = 0;
#if 0 /* custom viewport doesn't call apply_state_changes, so we can't rely on this for now */ #if 0 /* custom viewport doesn't call apply_state_changes, so we can't rely on this for now */
if (d3d10->resize_viewport) if (d3d10->resize_viewport)
#endif #endif
d3d10_update_viewport(d3d10, false); d3d10_update_viewport(d3d10, false);
D3D10SetViewports(d3d10->device, 1, &d3d10->frame.viewport); D3D10SetViewports(d3d10->device, 1, &d3d10->frame.viewport);
D3D10SetVertexBuffers(d3d10->device, 0, 1, &d3d10->frame.vbo, &stride, &offset); D3D10SetVertexBuffers(d3d10->device, 0, 1, &d3d10->frame.vbo, &stride, &offset);
@ -488,7 +493,7 @@ static void d3d10_set_menu_texture_frame(
d3d10_update_texture(width, height, pitch, format, frame, &d3d10->menu.texture); d3d10_update_texture(width, height, pitch, format, frame, &d3d10->menu.texture);
d3d10->menu.sampler = config_get_ptr()->bools.menu_linear_filter ? d3d10->sampler_linear d3d10->menu.sampler = config_get_ptr()->bools.menu_linear_filter ? d3d10->sampler_linear
: d3d10->sampler_nearest; : d3d10->sampler_nearest;
} }
static void d3d10_set_menu_texture_enable(void* data, bool state, bool full_screen) static void d3d10_set_menu_texture_enable(void* data, bool state, bool full_screen)
{ {

View File

@ -84,7 +84,7 @@ static void d3d11_update_viewport(void* data, bool force_full)
d3d11->frame.viewport.MaxDepth = 1.0f; d3d11->frame.viewport.MaxDepth = 1.0f;
if (d3d11->shader_preset && (d3d11->frame.output_size.x != d3d11->vp.width || if (d3d11->shader_preset && (d3d11->frame.output_size.x != d3d11->vp.width ||
d3d11->frame.output_size.y != d3d11->vp.height)) d3d11->frame.output_size.y != d3d11->vp.height))
d3d11->resize_render_targets = true; d3d11->resize_render_targets = true;
d3d11->frame.output_size.x = d3d11->vp.width; d3d11->frame.output_size.x = d3d11->vp.width;
@ -183,33 +183,33 @@ static bool d3d11_gfx_set_shader(void* data, enum rarch_shader_type type, const
{ {
/* Original */ /* Original */
{ &d3d11->frame.texture[0].view, 0, { &d3d11->frame.texture[0].view, 0,
&d3d11->frame.texture[0].size_data, 0, &d3d11->frame.texture[0].size_data, 0,
&d3d11->pass[i].sampler, 0 }, &d3d11->pass[i].sampler, 0 },
/* Source */ /* Source */
{ &source->view, 0, { &source->view, 0,
&source->size_data, 0, &source->size_data, 0,
&d3d11->pass[i].sampler, 0 }, &d3d11->pass[i].sampler, 0 },
/* OriginalHistory */ /* OriginalHistory */
{ &d3d11->frame.texture[0].view, sizeof(*d3d11->frame.texture), { &d3d11->frame.texture[0].view, sizeof(*d3d11->frame.texture),
&d3d11->frame.texture[0].size_data, sizeof(*d3d11->frame.texture), &d3d11->frame.texture[0].size_data, sizeof(*d3d11->frame.texture),
&d3d11->pass[i].sampler, 0 }, &d3d11->pass[i].sampler, 0 },
/* PassOutput */ /* PassOutput */
{ &d3d11->pass[0].rt.view, sizeof(*d3d11->pass), { &d3d11->pass[0].rt.view, sizeof(*d3d11->pass),
&d3d11->pass[0].rt.size_data, sizeof(*d3d11->pass), &d3d11->pass[0].rt.size_data, sizeof(*d3d11->pass),
&d3d11->pass[i].sampler, 0 }, &d3d11->pass[i].sampler, 0 },
/* PassFeedback */ /* PassFeedback */
{ &d3d11->pass[0].feedback.view, sizeof(*d3d11->pass), { &d3d11->pass[0].feedback.view, sizeof(*d3d11->pass),
&d3d11->pass[0].feedback.size_data, sizeof(*d3d11->pass), &d3d11->pass[0].feedback.size_data, sizeof(*d3d11->pass),
&d3d11->pass[i].sampler, 0 }, &d3d11->pass[i].sampler, 0 },
/* User */ /* User */
{ &d3d11->luts[0].view, sizeof(*d3d11->luts), { &d3d11->luts[0].view, sizeof(*d3d11->luts),
&d3d11->luts[0].size_data, sizeof(*d3d11->luts), &d3d11->luts[0].size_data, sizeof(*d3d11->luts),
&d3d11->luts[0].sampler, sizeof(*d3d11->luts) }, &d3d11->luts[0].sampler, sizeof(*d3d11->luts) },
}, },
{ {
&d3d11->mvp, /* MVP */ &d3d11->mvp, /* MVP */
@ -221,16 +221,16 @@ static bool d3d11_gfx_set_shader(void* data, enum rarch_shader_type type, const
/* clang-format on */ /* clang-format on */
if (!slang_process( if (!slang_process(
d3d11->shader_preset, i, RARCH_SHADER_HLSL, 50, &semantics_map, d3d11->shader_preset, i, RARCH_SHADER_HLSL, 50, &semantics_map,
&d3d11->pass[i].semantics)) &d3d11->pass[i].semantics))
goto error; goto error;
{ {
static const D3D11_INPUT_ELEMENT_DESC desc[] = { static const D3D11_INPUT_ELEMENT_DESC desc[] = {
{ "TEXCOORD", 0, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d11_vertex_t, position), { "TEXCOORD", 0, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d11_vertex_t, position),
D3D11_INPUT_PER_VERTEX_DATA, 0 }, D3D11_INPUT_PER_VERTEX_DATA, 0 },
{ "TEXCOORD", 1, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d11_vertex_t, texcoord), { "TEXCOORD", 1, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d11_vertex_t, texcoord),
D3D11_INPUT_PER_VERTEX_DATA, 0 }, D3D11_INPUT_PER_VERTEX_DATA, 0 },
}; };
#ifdef DEBUG #ifdef DEBUG
bool save_hlsl = true; bool save_hlsl = true;
@ -255,13 +255,13 @@ static bool d3d11_gfx_set_shader(void* data, enum rarch_shader_type type, const
strncpy(ps_path + base_len, ps_ext, sizeof(ps_ext)); strncpy(ps_path + base_len, ps_ext, sizeof(ps_ext));
if (!d3d11_init_shader( if (!d3d11_init_shader(
d3d11->device, vs_src, 0, vs_path, "main", NULL, NULL, desc, countof(desc), d3d11->device, vs_src, 0, vs_path, "main", NULL, NULL, desc, countof(desc),
&d3d11->pass[i].shader)) &d3d11->pass[i].shader))
save_hlsl = true; save_hlsl = true;
if (!d3d11_init_shader( if (!d3d11_init_shader(
d3d11->device, ps_src, 0, ps_path, NULL, "main", NULL, NULL, 0, d3d11->device, ps_src, 0, ps_path, NULL, "main", NULL, NULL, 0,
&d3d11->pass[i].shader)) &d3d11->pass[i].shader))
save_hlsl = true; save_hlsl = true;
if (save_hlsl) if (save_hlsl)
@ -325,7 +325,7 @@ static bool d3d11_gfx_set_shader(void* data, enum rarch_shader_type type, const
image_texture_free(&image); image_texture_free(&image);
d3d11->luts[i].sampler = d3d11->luts[i].sampler =
d3d11->samplers[d3d11->shader_preset->lut[i].filter][d3d11->shader_preset->lut[i].wrap]; d3d11->samplers[d3d11->shader_preset->lut[i].filter][d3d11->shader_preset->lut[i].wrap];
} }
video_shader_resolve_current_parameters(conf, d3d11->shader_preset); video_shader_resolve_current_parameters(conf, d3d11->shader_preset);
@ -399,7 +399,7 @@ static void d3d11_gfx_free(void* data)
free(d3d11); free(d3d11);
} }
static void* static void*
d3d11_gfx_init(const video_info_t* video, const input_driver_t** input, void** input_data) d3d11_gfx_init(const video_info_t* video, const input_driver_t** input, void** input_data)
{ {
unsigned i; unsigned i;
@ -579,52 +579,52 @@ d3d11_gfx_init(const video_info_t* video, const input_driver_t** input, void** i
{ {
D3D11_INPUT_ELEMENT_DESC desc[] = { D3D11_INPUT_ELEMENT_DESC desc[] = {
{ "POSITION", 0, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d11_vertex_t, position), { "POSITION", 0, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d11_vertex_t, position),
D3D11_INPUT_PER_VERTEX_DATA, 0 }, D3D11_INPUT_PER_VERTEX_DATA, 0 },
{ "TEXCOORD", 0, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d11_vertex_t, texcoord), { "TEXCOORD", 0, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d11_vertex_t, texcoord),
D3D11_INPUT_PER_VERTEX_DATA, 0 }, D3D11_INPUT_PER_VERTEX_DATA, 0 },
{ "COLOR", 0, DXGI_FORMAT_R32G32B32A32_FLOAT, 0, offsetof(d3d11_vertex_t, color), { "COLOR", 0, DXGI_FORMAT_R32G32B32A32_FLOAT, 0, offsetof(d3d11_vertex_t, color),
D3D11_INPUT_PER_VERTEX_DATA, 0 }, D3D11_INPUT_PER_VERTEX_DATA, 0 },
}; };
static const char shader[] = static const char shader[] =
#include "d3d_shaders/opaque_sm5.hlsl.h" #include "d3d_shaders/opaque_sm5.hlsl.h"
; ;
if (!d3d11_init_shader( if (!d3d11_init_shader(
d3d11->device, shader, sizeof(shader), NULL, "VSMain", "PSMain", NULL, desc, d3d11->device, shader, sizeof(shader), NULL, "VSMain", "PSMain", NULL, desc,
countof(desc), &d3d11->shaders[VIDEO_SHADER_STOCK_BLEND])) countof(desc), &d3d11->shaders[VIDEO_SHADER_STOCK_BLEND]))
goto error; goto error;
} }
{ {
D3D11_INPUT_ELEMENT_DESC desc[] = { D3D11_INPUT_ELEMENT_DESC desc[] = {
{ "POSITION", 0, DXGI_FORMAT_R32G32B32A32_FLOAT, 0, offsetof(d3d11_sprite_t, pos), { "POSITION", 0, DXGI_FORMAT_R32G32B32A32_FLOAT, 0, offsetof(d3d11_sprite_t, pos),
D3D11_INPUT_PER_VERTEX_DATA, 0 }, D3D11_INPUT_PER_VERTEX_DATA, 0 },
{ "TEXCOORD", 0, DXGI_FORMAT_R32G32B32A32_FLOAT, 0, offsetof(d3d11_sprite_t, coords), { "TEXCOORD", 0, DXGI_FORMAT_R32G32B32A32_FLOAT, 0, offsetof(d3d11_sprite_t, coords),
D3D11_INPUT_PER_VERTEX_DATA, 0 }, D3D11_INPUT_PER_VERTEX_DATA, 0 },
{ "COLOR", 0, DXGI_FORMAT_R8G8B8A8_UNORM, 0, offsetof(d3d11_sprite_t, colors[0]), { "COLOR", 0, DXGI_FORMAT_R8G8B8A8_UNORM, 0, offsetof(d3d11_sprite_t, colors[0]),
D3D11_INPUT_PER_VERTEX_DATA, 0 }, D3D11_INPUT_PER_VERTEX_DATA, 0 },
{ "COLOR", 1, DXGI_FORMAT_R8G8B8A8_UNORM, 0, offsetof(d3d11_sprite_t, colors[1]), { "COLOR", 1, DXGI_FORMAT_R8G8B8A8_UNORM, 0, offsetof(d3d11_sprite_t, colors[1]),
D3D11_INPUT_PER_VERTEX_DATA, 0 }, D3D11_INPUT_PER_VERTEX_DATA, 0 },
{ "COLOR", 2, DXGI_FORMAT_R8G8B8A8_UNORM, 0, offsetof(d3d11_sprite_t, colors[2]), { "COLOR", 2, DXGI_FORMAT_R8G8B8A8_UNORM, 0, offsetof(d3d11_sprite_t, colors[2]),
D3D11_INPUT_PER_VERTEX_DATA, 0 }, D3D11_INPUT_PER_VERTEX_DATA, 0 },
{ "COLOR", 3, DXGI_FORMAT_R8G8B8A8_UNORM, 0, offsetof(d3d11_sprite_t, colors[3]), { "COLOR", 3, DXGI_FORMAT_R8G8B8A8_UNORM, 0, offsetof(d3d11_sprite_t, colors[3]),
D3D11_INPUT_PER_VERTEX_DATA, 0 }, D3D11_INPUT_PER_VERTEX_DATA, 0 },
{ "PARAMS", 0, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d11_sprite_t, params), { "PARAMS", 0, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d11_sprite_t, params),
D3D11_INPUT_PER_VERTEX_DATA, 0 }, D3D11_INPUT_PER_VERTEX_DATA, 0 },
}; };
static const char shader[] = static const char shader[] =
#include "d3d_shaders/sprite_sm4.hlsl.h" #include "d3d_shaders/sprite_sm4.hlsl.h"
; ;
if (!d3d11_init_shader( if (!d3d11_init_shader(
d3d11->device, shader, sizeof(shader), NULL, "VSMain", "PSMain", "GSMain", desc, d3d11->device, shader, sizeof(shader), NULL, "VSMain", "PSMain", "GSMain", desc,
countof(desc), &d3d11->sprites.shader)) countof(desc), &d3d11->sprites.shader))
goto error; goto error;
if (!d3d11_init_shader( if (!d3d11_init_shader(
d3d11->device, shader, sizeof(shader), NULL, "VSMain", "PSMainA8", "GSMain", desc, d3d11->device, shader, sizeof(shader), NULL, "VSMain", "PSMainA8", "GSMain", desc,
countof(desc), &d3d11->sprites.shader_font)) countof(desc), &d3d11->sprites.shader_font))
goto error; goto error;
} }
@ -635,60 +635,60 @@ d3d11_gfx_init(const video_info_t* video, const input_driver_t** input, void** i
static const char ribbon[] = static const char ribbon[] =
#include "d3d_shaders/ribbon_sm4.hlsl.h" #include "d3d_shaders/ribbon_sm4.hlsl.h"
; ;
static const char ribbon_simple[] = static const char ribbon_simple[] =
#include "d3d_shaders/ribbon_simple_sm4.hlsl.h" #include "d3d_shaders/ribbon_simple_sm4.hlsl.h"
; ;
if (!d3d11_init_shader( if (!d3d11_init_shader(
d3d11->device, ribbon, sizeof(ribbon), NULL, "VSMain", "PSMain", NULL, desc, d3d11->device, ribbon, sizeof(ribbon), NULL, "VSMain", "PSMain", NULL, desc,
countof(desc), &d3d11->shaders[VIDEO_SHADER_MENU])) countof(desc), &d3d11->shaders[VIDEO_SHADER_MENU]))
goto error; goto error;
if (!d3d11_init_shader( if (!d3d11_init_shader(
d3d11->device, ribbon_simple, sizeof(ribbon_simple), NULL, "VSMain", "PSMain", NULL, d3d11->device, ribbon_simple, sizeof(ribbon_simple), NULL, "VSMain", "PSMain", NULL,
desc, countof(desc), &d3d11->shaders[VIDEO_SHADER_MENU_2])) desc, countof(desc), &d3d11->shaders[VIDEO_SHADER_MENU_2]))
goto error; goto error;
} }
{ {
D3D11_INPUT_ELEMENT_DESC desc[] = { D3D11_INPUT_ELEMENT_DESC desc[] = {
{ "POSITION", 0, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d11_vertex_t, position), { "POSITION", 0, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d11_vertex_t, position),
D3D11_INPUT_PER_VERTEX_DATA, 0 }, D3D11_INPUT_PER_VERTEX_DATA, 0 },
{ "TEXCOORD", 0, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d11_vertex_t, texcoord), { "TEXCOORD", 0, DXGI_FORMAT_R32G32_FLOAT, 0, offsetof(d3d11_vertex_t, texcoord),
D3D11_INPUT_PER_VERTEX_DATA, 0 }, D3D11_INPUT_PER_VERTEX_DATA, 0 },
}; };
static const char simple_snow[] = static const char simple_snow[] =
#include "d3d_shaders/simple_snow_sm4.hlsl.h" #include "d3d_shaders/simple_snow_sm4.hlsl.h"
; ;
static const char snow[] = static const char snow[] =
#include "d3d_shaders/snow_sm4.hlsl.h" #include "d3d_shaders/snow_sm4.hlsl.h"
; ;
static const char bokeh[] = static const char bokeh[] =
#include "d3d_shaders/bokeh_sm4.hlsl.h" #include "d3d_shaders/bokeh_sm4.hlsl.h"
; ;
static const char snowflake[] = static const char snowflake[] =
#include "d3d_shaders/snowflake_sm4.hlsl.h" #include "d3d_shaders/snowflake_sm4.hlsl.h"
; ;
if (!d3d11_init_shader( if (!d3d11_init_shader(
d3d11->device, simple_snow, sizeof(simple_snow), NULL, "VSMain", "PSMain", NULL, d3d11->device, simple_snow, sizeof(simple_snow), NULL, "VSMain", "PSMain", NULL,
desc, countof(desc), &d3d11->shaders[VIDEO_SHADER_MENU_3])) desc, countof(desc), &d3d11->shaders[VIDEO_SHADER_MENU_3]))
goto error; goto error;
if (!d3d11_init_shader( if (!d3d11_init_shader(
d3d11->device, snow, sizeof(snow), NULL, "VSMain", "PSMain", NULL, desc, d3d11->device, snow, sizeof(snow), NULL, "VSMain", "PSMain", NULL, desc,
countof(desc), &d3d11->shaders[VIDEO_SHADER_MENU_4])) countof(desc), &d3d11->shaders[VIDEO_SHADER_MENU_4]))
goto error; goto error;
if (!d3d11_init_shader( if (!d3d11_init_shader(
d3d11->device, bokeh, sizeof(bokeh), NULL, "VSMain", "PSMain", NULL, desc, d3d11->device, bokeh, sizeof(bokeh), NULL, "VSMain", "PSMain", NULL, desc,
countof(desc), &d3d11->shaders[VIDEO_SHADER_MENU_5])) countof(desc), &d3d11->shaders[VIDEO_SHADER_MENU_5]))
goto error; goto error;
if (!d3d11_init_shader( if (!d3d11_init_shader(
d3d11->device, snowflake, sizeof(snowflake), NULL, "VSMain", "PSMain", NULL, desc, d3d11->device, snowflake, sizeof(snowflake), NULL, "VSMain", "PSMain", NULL, desc,
countof(desc), &d3d11->shaders[VIDEO_SHADER_MENU_6])) countof(desc), &d3d11->shaders[VIDEO_SHADER_MENU_6]))
goto error; goto error;
} }
@ -715,7 +715,7 @@ d3d11_gfx_init(const video_info_t* video, const input_driver_t** input, void** i
D3D11CreateBlendState(d3d11->device, &blend_desc, &d3d11->blend_disable); D3D11CreateBlendState(d3d11->device, &blend_desc, &d3d11->blend_disable);
} }
{ {
D3D11_RASTERIZER_DESC desc = {}; D3D11_RASTERIZER_DESC desc = {(D3D11_FILL_MODE)0};
desc.FillMode = D3D11_FILL_SOLID; desc.FillMode = D3D11_FILL_SOLID;
desc.CullMode = D3D11_CULL_NONE; desc.CullMode = D3D11_CULL_NONE;
@ -825,7 +825,7 @@ static void d3d11_init_render_targets(d3d11_video_t* d3d11, unsigned width, unsi
RARCH_LOG("[D3D11]: Updating framebuffer size %u x %u.\n", width, height); RARCH_LOG("[D3D11]: Updating framebuffer size %u x %u.\n", width, height);
if ((i != (d3d11->shader_preset->passes - 1)) || (width != d3d11->vp.width) || if ((i != (d3d11->shader_preset->passes - 1)) || (width != d3d11->vp.width) ||
(height != d3d11->vp.height)) (height != d3d11->vp.height))
{ {
d3d11->pass[i].viewport.Width = width; d3d11->pass[i].viewport.Width = width;
d3d11->pass[i].viewport.Height = height; d3d11->pass[i].viewport.Height = height;
@ -908,7 +908,7 @@ static bool d3d11_gfx_frame(
#if 0 /* custom viewport doesn't call apply_state_changes, so we can't rely on this for now */ #if 0 /* custom viewport doesn't call apply_state_changes, so we can't rely on this for now */
if (d3d11->resize_viewport) if (d3d11->resize_viewport)
#endif #endif
d3d11_update_viewport(d3d11, false); d3d11_update_viewport(d3d11, false);
D3D11SetPrimitiveTopology(context, D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP); D3D11SetPrimitiveTopology(context, D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP);
@ -917,7 +917,7 @@ static bool d3d11_gfx_frame(
if (d3d11->shader_preset) if (d3d11->shader_preset)
{ {
if (d3d11->frame.texture[0].desc.Width != width || if (d3d11->frame.texture[0].desc.Width != width ||
d3d11->frame.texture[0].desc.Height != height) d3d11->frame.texture[0].desc.Height != height)
d3d11->resize_render_targets = true; d3d11->resize_render_targets = true;
if (d3d11->resize_render_targets) if (d3d11->resize_render_targets)
@ -946,7 +946,7 @@ static bool d3d11_gfx_frame(
/* either no history, or we moved a texture of a different size in the front slot */ /* either no history, or we moved a texture of a different size in the front slot */
if (d3d11->frame.texture[0].desc.Width != width || if (d3d11->frame.texture[0].desc.Width != width ||
d3d11->frame.texture[0].desc.Height != height) d3d11->frame.texture[0].desc.Height != height)
{ {
d3d11->frame.texture[0].desc.Width = width; d3d11->frame.texture[0].desc.Width = width;
d3d11->frame.texture[0].desc.Height = height; d3d11->frame.texture[0].desc.Height = height;
@ -985,7 +985,7 @@ static bool d3d11_gfx_frame(
if (d3d11->shader_preset->pass[i].frame_count_mod) if (d3d11->shader_preset->pass[i].frame_count_mod)
d3d11->pass[i].frame_count = d3d11->pass[i].frame_count =
frame_count % d3d11->shader_preset->pass[i].frame_count_mod; frame_count % d3d11->shader_preset->pass[i].frame_count_mod;
else else
d3d11->pass[i].frame_count = frame_count; d3d11->pass[i].frame_count = frame_count;
@ -1178,7 +1178,7 @@ static void d3d11_set_menu_texture_frame(
{ {
d3d11_video_t* d3d11 = (d3d11_video_t*)data; d3d11_video_t* d3d11 = (d3d11_video_t*)data;
DXGI_FORMAT format = DXGI_FORMAT format =
rgb32 ? DXGI_FORMAT_B8G8R8A8_UNORM : (DXGI_FORMAT)DXGI_FORMAT_EX_A4R4G4B4_UNORM; rgb32 ? DXGI_FORMAT_B8G8R8A8_UNORM : (DXGI_FORMAT)DXGI_FORMAT_EX_A4R4G4B4_UNORM;
if (d3d11->menu.texture.desc.Width != width || d3d11->menu.texture.desc.Height != height) if (d3d11->menu.texture.desc.Width != width || d3d11->menu.texture.desc.Height != height)
{ {
@ -1190,9 +1190,9 @@ static void d3d11_set_menu_texture_frame(
d3d11_update_texture(d3d11->context, width, height, 0, format, frame, &d3d11->menu.texture); d3d11_update_texture(d3d11->context, width, height, 0, format, frame, &d3d11->menu.texture);
d3d11->menu.texture.sampler = d3d11->samplers d3d11->menu.texture.sampler = d3d11->samplers
[config_get_ptr()->bools.menu_linear_filter [config_get_ptr()->bools.menu_linear_filter
? RARCH_FILTER_LINEAR ? RARCH_FILTER_LINEAR
: RARCH_FILTER_NEAREST][RARCH_WRAP_DEFAULT]; : RARCH_FILTER_NEAREST][RARCH_WRAP_DEFAULT];
} }
static void d3d11_set_menu_texture_enable(void* data, bool state, bool full_screen) static void d3d11_set_menu_texture_enable(void* data, bool state, bool full_screen)