[PATCH] wined3d: Add WINED3DFMT_R16_FLOAT vertex format.

Andrey Gusev andrey.goosev at gmail.com
Thu Nov 18 11:23:45 CST 2021


Fixes rendering glitches in Batman: Arkham Knight.

Signed-off-by: Andrey Gusev <andrey.goosev at gmail.com>
---
 dlls/d3d11/tests/d3d11.c | 1 +
 dlls/wined3d/utils.c     | 2 ++
 2 files changed, 3 insertions(+)

diff --git a/dlls/d3d11/tests/d3d11.c b/dlls/d3d11/tests/d3d11.c
index 140e7cc195c..38cd1309e02 100644
--- a/dlls/d3d11/tests/d3d11.c
+++ b/dlls/d3d11/tests/d3d11.c
@@ -18552,6 +18552,7 @@ static void test_create_input_layout(void)
         DXGI_FORMAT_R32_FLOAT,
         DXGI_FORMAT_R32_UINT,
         DXGI_FORMAT_R32_SINT,
+        DXGI_FORMAT_R16_FLOAT,
         DXGI_FORMAT_R16_UINT,
         DXGI_FORMAT_R16_SINT,
         DXGI_FORMAT_R8G8_UNORM,
diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c
index 1b0d7cc6eba..148bb39bafe 100644
--- a/dlls/wined3d/utils.c
+++ b/dlls/wined3d/utils.c
@@ -715,6 +715,8 @@ static const struct wined3d_format_vertex_info format_vertex_info[] =
     {WINED3DFMT_R10G10B10A2_UNORM,  WINED3D_FFP_EMIT_INVALID,   GL_UNSIGNED_INT_2_10_10_10_REV,
             ARB_VERTEX_TYPE_2_10_10_10_REV},
     /* Without ARB_half_float_vertex we convert these on upload. */
+    {WINED3DFMT_R16_FLOAT,          WINED3D_FFP_EMIT_INVALID,   GL_FLOAT},
+    {WINED3DFMT_R16_FLOAT,          WINED3D_FFP_EMIT_INVALID,   GL_HALF_FLOAT, ARB_HALF_FLOAT_VERTEX},
     {WINED3DFMT_R16G16_FLOAT,       WINED3D_FFP_EMIT_FLOAT16_2, GL_FLOAT},
     {WINED3DFMT_R16G16_FLOAT,       WINED3D_FFP_EMIT_FLOAT16_2, GL_HALF_FLOAT, ARB_HALF_FLOAT_VERTEX},
     {WINED3DFMT_R16G16B16A16_FLOAT, WINED3D_FFP_EMIT_FLOAT16_4, GL_FLOAT},
-- 
2.33.1




More information about the wine-devel mailing list