[PATCH] wined3d: Add WINED3DFMT_R11G11B10_FLOAT vertex format.

Andrey Gusev andrey.goosev at gmail.com
Thu Dec 16 12:18:40 CST 2021


Used by Dark Souls: Remastered.

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

diff --git a/dlls/d3d10core/tests/d3d10core.c b/dlls/d3d10core/tests/d3d10core.c
index a4729f9d2d3..a1c4be46b7f 100644
--- a/dlls/d3d10core/tests/d3d10core.c
+++ b/dlls/d3d10core/tests/d3d10core.c
@@ -12370,6 +12370,7 @@ static void test_create_input_layout(void)
         DXGI_FORMAT_R16G16_FLOAT,
         DXGI_FORMAT_R16G16_UINT,
         DXGI_FORMAT_R16G16_SINT,
+        DXGI_FORMAT_R11G11B10_FLOAT,
         DXGI_FORMAT_R32_FLOAT,
         DXGI_FORMAT_R32_UINT,
         DXGI_FORMAT_R32_SINT,
@@ -13649,6 +13650,7 @@ static void test_format_support(void)
     static const struct format_support vertex_buffers[] =
     {
         {DXGI_FORMAT_R8G8_UINT},
+        {DXGI_FORMAT_R11G11B10_FLOAT},
         {DXGI_FORMAT_R16_FLOAT},
     };
 
diff --git a/dlls/d3d11/tests/d3d11.c b/dlls/d3d11/tests/d3d11.c
index 53087684acf..5a8affbf75a 100644
--- a/dlls/d3d11/tests/d3d11.c
+++ b/dlls/d3d11/tests/d3d11.c
@@ -18549,6 +18549,7 @@ static void test_create_input_layout(void)
         DXGI_FORMAT_R16G16_FLOAT,
         DXGI_FORMAT_R16G16_UINT,
         DXGI_FORMAT_R16G16_SINT,
+        DXGI_FORMAT_R11G11B10_FLOAT,
         DXGI_FORMAT_R32_FLOAT,
         DXGI_FORMAT_R32_UINT,
         DXGI_FORMAT_R32_SINT,
@@ -20623,6 +20624,7 @@ static void test_format_support(const D3D_FEATURE_LEVEL feature_level)
     static const struct format_support vertex_buffers[] =
     {
         {DXGI_FORMAT_R8G8_UINT, D3D_FEATURE_LEVEL_10_0},
+        {DXGI_FORMAT_R11G11B10_FLOAT, D3D_FEATURE_LEVEL_10_0},
         {DXGI_FORMAT_R16_FLOAT, D3D_FEATURE_LEVEL_10_0},
     };
 
diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c
index ef2e28b545a..61e77f46ebc 100644
--- a/dlls/wined3d/utils.c
+++ b/dlls/wined3d/utils.c
@@ -709,6 +709,7 @@ static const struct wined3d_format_vertex_info format_vertex_info[] =
     {WINED3DFMT_R16G16B16A16_SNORM, WINED3D_FFP_EMIT_SHORT4N,   GL_SHORT},
     {WINED3DFMT_R16G16_UNORM,       WINED3D_FFP_EMIT_USHORT2N,  GL_UNSIGNED_SHORT},
     {WINED3DFMT_R16G16B16A16_UNORM, WINED3D_FFP_EMIT_USHORT4N,  GL_UNSIGNED_SHORT},
+    {WINED3DFMT_R11G11B10_FLOAT,    WINED3D_FFP_EMIT_FLOAT3,    GL_FLOAT},
     {WINED3DFMT_R10G10B10X2_UINT,   WINED3D_FFP_EMIT_UDEC3,     GL_UNSIGNED_SHORT},
     {WINED3DFMT_R10G10B10X2_SNORM,  WINED3D_FFP_EMIT_DEC3N,     GL_SHORT},
     {WINED3DFMT_R10G10B10A2_UNORM,  WINED3D_FFP_EMIT_INVALID,   GL_UNSIGNED_INT_2_10_10_10_REV,
-- 
2.33.1




More information about the wine-devel mailing list