[PATCH v2 3/5] d3d11: Support D3D11_FEATURE_FORMAT_SUPPORT.
Chip Davis
wine at gitlab.winehq.org
Thu May 26 01:51:41 CDT 2022
From: Chip Davis <cdavis5x at gmail.com>
Signed-off-by: Chip Davis <cdavis5x at gmail.com>
---
dlls/d3d11/device.c | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
index f1b9edc88d3..10c8edb16ff 100644
--- a/dlls/d3d11/device.c
+++ b/dlls/d3d11/device.c
@@ -3977,6 +3977,33 @@ static HRESULT STDMETHODCALLTYPE d3d11_device_CheckFeatureSupport(ID3D11Device2
return S_OK;
}
+ case D3D11_FEATURE_FORMAT_SUPPORT:
+ {
+ D3D11_FEATURE_DATA_FORMAT_SUPPORT *support = feature_support_data;
+ enum wined3d_format_id wined3d_format;
+
+ if (feature_support_data_size != sizeof(*support))
+ {
+ WARN("Invalid data size.\n");
+ return E_INVALIDARG;
+ }
+
+ wined3d_format = wined3dformat_from_dxgi_format(support->InFormat);
+ if (support->InFormat && !wined3d_format)
+ {
+ WARN("Invalid format %#x.\n", support->InFormat);
+ support->OutFormatSupport = 0;
+ return E_FAIL;
+ }
+
+ wined3d_mutex_lock();
+ hr = wined3d_device_check_format_support(device->wined3d_device,
+ wined3d_format, &support->OutFormatSupport, NULL);
+ wined3d_mutex_unlock();
+
+ return hr;
+ }
+
case D3D11_FEATURE_D3D9_OPTIONS:
{
D3D11_FEATURE_DATA_D3D9_OPTIONS *options = feature_support_data;
--
GitLab
https://gitlab.winehq.org/wine/wine/-/merge_requests/131
More information about the wine-devel
mailing list