summaryrefslogtreecommitdiffstats
path: root/video/out/gpu/d3d11_helpers.c
diff options
context:
space:
mode:
Diffstat (limited to 'video/out/gpu/d3d11_helpers.c')
-rw-r--r--video/out/gpu/d3d11_helpers.c24
1 files changed, 4 insertions, 20 deletions
diff --git a/video/out/gpu/d3d11_helpers.c b/video/out/gpu/d3d11_helpers.c
index 6391ed92cd..ec0c6514da 100644
--- a/video/out/gpu/d3d11_helpers.c
+++ b/video/out/gpu/d3d11_helpers.c
@@ -72,9 +72,8 @@ static int get_feature_levels(int max_fl, int min_fl,
return len;
}
-static HRESULT create_device(struct mp_log *log, bool warp, bool bgra,
- bool debug, int max_fl, int min_fl,
- ID3D11Device **dev)
+static HRESULT create_device(struct mp_log *log, bool warp, bool debug,
+ int max_fl, int min_fl, ID3D11Device **dev)
{
const D3D_FEATURE_LEVEL *levels;
int levels_len = get_feature_levels(max_fl, min_fl, &levels);
@@ -85,11 +84,7 @@ static HRESULT create_device(struct mp_log *log, bool warp, bool bgra,
D3D_DRIVER_TYPE type = warp ? D3D_DRIVER_TYPE_WARP
: D3D_DRIVER_TYPE_HARDWARE;
- UINT flags = 0;
- if (bgra)
- flags |= D3D11_CREATE_DEVICE_BGRA_SUPPORT;
- if (debug)
- flags |= D3D11_CREATE_DEVICE_DEBUG;
+ UINT flags = debug ? D3D11_CREATE_DEVICE_DEBUG : 0;
return pD3D11CreateDevice(NULL, type, NULL, flags, levels, levels_len,
D3D11_SDK_VERSION, dev, NULL, NULL);
}
@@ -102,7 +97,6 @@ bool mp_d3d11_create_present_device(struct mp_log *log,
ID3D11Device **dev_out)
{
bool warp = opts->force_warp;
- bool bgra = true;
int max_fl = opts->max_feature_level;
int min_fl = opts->min_feature_level;
ID3D11Device *dev = NULL;
@@ -123,17 +117,10 @@ bool mp_d3d11_create_present_device(struct mp_log *log,
max_fl = max_fl ? max_fl : D3D_FEATURE_LEVEL_11_0;
min_fl = min_fl ? min_fl : D3D_FEATURE_LEVEL_9_1;
- hr = create_device(log, warp, bgra, opts->debug, max_fl, min_fl, &dev);
+ hr = create_device(log, warp, opts->debug, max_fl, min_fl, &dev);
if (SUCCEEDED(hr))
break;
- // BGRA is recommended, but FL 10_0 hardware may not support it
- if (bgra) {
- mp_dbg(log, "Failed to create D3D device with BGRA support\n");
- bgra = false;
- continue;
- }
-
// Trying to create a D3D_FEATURE_LEVEL_12_0 device on Windows 8.1 or
// below will not succeed. Try an 11_1 device.
if (max_fl >= D3D_FEATURE_LEVEL_12_0 &&
@@ -141,7 +128,6 @@ bool mp_d3d11_create_present_device(struct mp_log *log,
{
mp_dbg(log, "Failed to create 12_0+ device, trying 11_1\n");
max_fl = D3D_FEATURE_LEVEL_11_1;
- bgra = true;
continue;
}
@@ -152,7 +138,6 @@ bool mp_d3d11_create_present_device(struct mp_log *log,
{
mp_dbg(log, "Failed to create 11_1+ device, trying 11_0\n");
max_fl = D3D_FEATURE_LEVEL_11_0;
- bgra = true;
continue;
}
@@ -162,7 +147,6 @@ bool mp_d3d11_create_present_device(struct mp_log *log,
warp = true;
max_fl = opts->max_feature_level;
min_fl = opts->min_feature_level;
- bgra = true;
continue;
}