=?UTF-8?Q?J=C3=B3zef=20Kucia=20?=: wined3d: Allow multisample resolve for typeless resources.
Alexandre Julliard
julliard at winehq.org
Mon Aug 20 13:26:11 CDT 2018
Module: wine
Branch: master
Commit: 24e609735b67ab7572262d6adbc9a1637f3ec165
URL: https://source.winehq.org/git/wine.git/?a=commit;h=24e609735b67ab7572262d6adbc9a1637f3ec165
Author: Józef Kucia <jkucia at codeweavers.com>
Date: Mon Aug 20 13:09:25 2018 +0200
wined3d: Allow multisample resolve for typeless resources.
It may perform an undesired format conversion in rare cases.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=39754
Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/d3d10core/tests/device.c | 30 +++++++++++++++---------------
dlls/d3d11/tests/d3d11.c | 30 +++++++++++++++---------------
dlls/wined3d/device.c | 4 ++--
3 files changed, 32 insertions(+), 32 deletions(-)
diff --git a/dlls/d3d10core/tests/device.c b/dlls/d3d10core/tests/device.c
index f3c3d86..8c95ee3 100644
--- a/dlls/d3d10core/tests/device.c
+++ b/dlls/d3d10core/tests/device.c
@@ -16862,12 +16862,12 @@ static void test_multisample_resolve(void)
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
- &green, 0xff00ff00, TRUE},
+ &green, 0xff00ff00},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
- &green, 0xff00ff00, TRUE},
+ &green, 0xff00ff00},
{DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
@@ -16877,69 +16877,69 @@ static void test_multisample_resolve(void)
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
- &color, 0xffe1bc89, TRUE},
+ &color, 0xffe1bc89},
{DXGI_FORMAT_R8G8B8A8_UNORM,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM,
DXGI_FORMAT_R8G8B8A8_UNORM,
- &green, 0xff00ff00, TRUE},
+ &green, 0xff00ff00},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM,
DXGI_FORMAT_R8G8B8A8_UNORM,
- &green, 0xff00ff00, TRUE},
+ &green, 0xff00ff00},
{DXGI_FORMAT_R8G8B8A8_UNORM,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM,
DXGI_FORMAT_R8G8B8A8_UNORM,
- &color, 0xffbf7f40, TRUE},
+ &color, 0xffbf7f40},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM,
DXGI_FORMAT_R8G8B8A8_UNORM,
- &color, 0xffbf7f40, TRUE},
+ &color, 0xffbf7f40},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM,
DXGI_FORMAT_R8G8B8A8_UNORM,
- &green, 0xff00ff00, TRUE},
+ &green, 0xff00ff00},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM,
DXGI_FORMAT_R8G8B8A8_UNORM,
- &color, 0xffbf7f40, TRUE},
+ &color, 0xffbf7f40},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
- &green, 0xff00ff00, TRUE},
+ &green, 0xff00ff00},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
- &color, 0xffe1bc89, TRUE},
+ &color, 0xffe1bc89},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
- &green, 0xff00ff00, TRUE},
+ &green, 0xff00ff00},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
- &color, 0xffe1bc89, TRUE},
+ &color, 0xffe1bc89},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
DXGI_FORMAT_R8G8B8A8_UNORM,
- &green, 0xff00ff00, TRUE},
+ &green, 0xff00ff00},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
DXGI_FORMAT_R8G8B8A8_UNORM,
- &color, 0xffbf7f40, TRUE},
+ &color, 0xffbf7f40},
};
if (!init_test_context(&test_context))
diff --git a/dlls/d3d11/tests/d3d11.c b/dlls/d3d11/tests/d3d11.c
index 60c88f4..bc2a53e 100644
--- a/dlls/d3d11/tests/d3d11.c
+++ b/dlls/d3d11/tests/d3d11.c
@@ -27295,12 +27295,12 @@ static void test_multisample_resolve(void)
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
- &green, 0xff00ff00, TRUE},
+ &green, 0xff00ff00},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
- &green, 0xff00ff00, TRUE},
+ &green, 0xff00ff00},
{DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
@@ -27310,69 +27310,69 @@ static void test_multisample_resolve(void)
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
- &color, 0xffe1bc89, TRUE},
+ &color, 0xffe1bc89},
{DXGI_FORMAT_R8G8B8A8_UNORM,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM,
DXGI_FORMAT_R8G8B8A8_UNORM,
- &green, 0xff00ff00, TRUE},
+ &green, 0xff00ff00},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM,
DXGI_FORMAT_R8G8B8A8_UNORM,
- &green, 0xff00ff00, TRUE},
+ &green, 0xff00ff00},
{DXGI_FORMAT_R8G8B8A8_UNORM,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM,
DXGI_FORMAT_R8G8B8A8_UNORM,
- &color, 0xffbf7f40, TRUE},
+ &color, 0xffbf7f40},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM,
DXGI_FORMAT_R8G8B8A8_UNORM,
- &color, 0xffbf7f40, TRUE},
+ &color, 0xffbf7f40},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM,
DXGI_FORMAT_R8G8B8A8_UNORM,
- &green, 0xff00ff00, TRUE},
+ &green, 0xff00ff00},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM,
DXGI_FORMAT_R8G8B8A8_UNORM,
- &color, 0xffbf7f40, TRUE},
+ &color, 0xffbf7f40},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
- &green, 0xff00ff00, TRUE},
+ &green, 0xff00ff00},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
- &color, 0xffe1bc89, TRUE},
+ &color, 0xffe1bc89},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
- &green, 0xff00ff00, TRUE},
+ &green, 0xff00ff00},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
- &color, 0xffe1bc89, TRUE},
+ &color, 0xffe1bc89},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
DXGI_FORMAT_R8G8B8A8_UNORM,
- &green, 0xff00ff00, TRUE},
+ &green, 0xff00ff00},
{DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_TYPELESS,
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
DXGI_FORMAT_R8G8B8A8_UNORM,
- &color, 0xffbf7f40, TRUE},
+ &color, 0xffbf7f40},
};
if (!init_test_context(&test_context, NULL))
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index 5079113..0f7ef67 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -4293,10 +4293,10 @@ void CDECL wined3d_device_resolve_sub_resource(struct wined3d_device *device,
if (wined3d_format_is_typeless(dst_resource->format)
|| wined3d_format_is_typeless(src_resource->format))
{
- FIXME("Unhandled multisample resolve, dst_format %s, src_format %s, format %s.\n",
+ FIXME("Multisample resolve is not fully supported for typeless formats "
+ "(dst_format %s, src_format %s, format %s).\n",
debug_d3dformat(dst_resource->format->id), debug_d3dformat(src_resource->format->id),
debug_d3dformat(format_id));
- return;
}
if (dst_resource->type != WINED3D_RTYPE_TEXTURE_2D)
{
More information about the wine-cvs
mailing list