From 5eca371a6ce7e72cabacd6ab34cb31e9665e6a07 Mon Sep 17 00:00:00 2001 From: Henri Verbeet Date: Sun, 11 Aug 2019 14:05:15 +0430 Subject: [PATCH] wined3d: Always report WINEDDSCAPS_TEXTURE, WINEDDSCAPS_ZBUFFER and WINEDDSCAPS_MIPMAP. Signed-off-by: Henri Verbeet Signed-off-by: Alexandre Julliard --- dlls/ddraw/tests/ddraw1.c | 14 ++++---------- dlls/ddraw/tests/ddraw2.c | 14 ++++---------- dlls/ddraw/tests/ddraw4.c | 14 ++++---------- dlls/ddraw/tests/ddraw7.c | 14 ++++---------- dlls/wined3d/adapter_gl.c | 5 +---- dlls/wined3d/adapter_vk.c | 5 +---- dlls/wined3d/directx.c | 5 ++++- 7 files changed, 22 insertions(+), 49 deletions(-) diff --git a/dlls/ddraw/tests/ddraw1.c b/dlls/ddraw/tests/ddraw1.c index 7c6116f4cde..9efb60a86bb 100644 --- a/dlls/ddraw/tests/ddraw1.c +++ b/dlls/ddraw/tests/ddraw1.c @@ -12894,7 +12894,6 @@ static void test_caps(void) DDCAPS hal_caps, hel_caps; IDirectDraw *ddraw; HRESULT hr; - BOOL no3d; caps_never = DDSCAPS_RESERVED1 | DDSCAPS_ALPHA @@ -12945,17 +12944,14 @@ static void test_caps(void) "Got unexpected caps %#x, expected %#x.\n", hel_caps.ddsOldCaps.dwCaps, hel_caps.ddsCaps.dwCaps); - no3d = !(hal_caps.ddsCaps.dwCaps & DDSCAPS_3DDEVICE); if (hal_caps.ddsCaps.dwCaps) { ok(!(hal_caps.ddsCaps.dwCaps & caps_never), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); - todo_wine_if(no3d) ok(!(~hal_caps.ddsCaps.dwCaps & caps_always), - "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); + ok(!(~hal_caps.ddsCaps.dwCaps & caps_always), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); todo_wine ok(!(~hal_caps.ddsCaps.dwCaps & caps_hal), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); } ok(!(hel_caps.ddsCaps.dwCaps & caps_never), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); - todo_wine_if(no3d) ok(!(~hel_caps.ddsCaps.dwCaps & caps_always), - "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); + ok(!(~hel_caps.ddsCaps.dwCaps & caps_always), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); todo_wine ok(!(hel_caps.ddsCaps.dwCaps & caps_hal), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); IDirectDraw_Release(ddraw); @@ -12979,8 +12975,7 @@ static void test_caps(void) hel_caps.ddsOldCaps.dwCaps, hel_caps.ddsCaps.dwCaps); ok(!(hal_caps.ddsCaps.dwCaps & caps_never), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); - todo_wine_if(no3d) ok(!(~hal_caps.ddsCaps.dwCaps & caps_always), - "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); + ok(!(~hal_caps.ddsCaps.dwCaps & caps_always), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); todo_wine ok(!(~hal_caps.ddsCaps.dwCaps & caps_hal), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); todo_wine ok(!hel_caps.ddsCaps.dwCaps, "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); @@ -13005,8 +13000,7 @@ static void test_caps(void) todo_wine ok(!hal_caps.ddsCaps.dwCaps, "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); ok(!(hel_caps.ddsCaps.dwCaps & caps_never), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); - todo_wine_if(no3d) ok(!(~hel_caps.ddsCaps.dwCaps & caps_always), - "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); + ok(!(~hel_caps.ddsCaps.dwCaps & caps_always), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); todo_wine ok(!(hel_caps.ddsCaps.dwCaps & caps_hal), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); IDirectDraw_Release(ddraw); diff --git a/dlls/ddraw/tests/ddraw2.c b/dlls/ddraw/tests/ddraw2.c index f4ac6673969..aa32b02cd99 100644 --- a/dlls/ddraw/tests/ddraw2.c +++ b/dlls/ddraw/tests/ddraw2.c @@ -13771,7 +13771,6 @@ static void test_caps(void) IDirectDraw2 *ddraw; IDirectDraw *ddraw1; HRESULT hr; - BOOL no3d; caps_never = DDSCAPS_RESERVED1 | DDSCAPS_ALPHA @@ -13822,17 +13821,14 @@ static void test_caps(void) "Got unexpected caps %#x, expected %#x.\n", hel_caps.ddsOldCaps.dwCaps, hel_caps.ddsCaps.dwCaps); - no3d = !(hal_caps.ddsCaps.dwCaps & DDSCAPS_3DDEVICE); if (hal_caps.ddsCaps.dwCaps) { ok(!(hal_caps.ddsCaps.dwCaps & caps_never), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); - todo_wine_if(no3d) ok(!(~hal_caps.ddsCaps.dwCaps & caps_always), - "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); + ok(!(~hal_caps.ddsCaps.dwCaps & caps_always), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); todo_wine ok(!(~hal_caps.ddsCaps.dwCaps & caps_hal), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); } ok(!(hel_caps.ddsCaps.dwCaps & caps_never), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); - todo_wine_if(no3d) ok(!(~hel_caps.ddsCaps.dwCaps & caps_always), - "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); + ok(!(~hel_caps.ddsCaps.dwCaps & caps_always), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); todo_wine ok(!(hel_caps.ddsCaps.dwCaps & caps_hal), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); IDirectDraw2_Release(ddraw); @@ -13859,8 +13855,7 @@ static void test_caps(void) hel_caps.ddsOldCaps.dwCaps, hel_caps.ddsCaps.dwCaps); ok(!(hal_caps.ddsCaps.dwCaps & caps_never), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); - todo_wine_if(no3d) ok(!(~hal_caps.ddsCaps.dwCaps & caps_always), - "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); + ok(!(~hal_caps.ddsCaps.dwCaps & caps_always), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); todo_wine ok(!(~hal_caps.ddsCaps.dwCaps & caps_hal), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); todo_wine ok(!hel_caps.ddsCaps.dwCaps, "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); @@ -13888,8 +13883,7 @@ static void test_caps(void) todo_wine ok(!hal_caps.ddsCaps.dwCaps, "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); ok(!(hel_caps.ddsCaps.dwCaps & caps_never), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); - todo_wine_if(no3d) ok(!(~hel_caps.ddsCaps.dwCaps & caps_always), - "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); + ok(!(~hel_caps.ddsCaps.dwCaps & caps_always), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); todo_wine ok(!(hel_caps.ddsCaps.dwCaps & caps_hal), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); IDirectDraw2_Release(ddraw); diff --git a/dlls/ddraw/tests/ddraw4.c b/dlls/ddraw/tests/ddraw4.c index e181f324f22..f08a6df548f 100644 --- a/dlls/ddraw/tests/ddraw4.c +++ b/dlls/ddraw/tests/ddraw4.c @@ -16332,7 +16332,6 @@ static void test_caps(void) IDirectDraw4 *ddraw; IDirectDraw *ddraw1; HRESULT hr; - BOOL no3d; caps_never = DDSCAPS_RESERVED1 | DDSCAPS_ALPHA @@ -16383,17 +16382,14 @@ static void test_caps(void) "Got unexpected caps %#x, expected %#x.\n", hel_caps.ddsOldCaps.dwCaps, hel_caps.ddsCaps.dwCaps); - no3d = !(hal_caps.ddsCaps.dwCaps & DDSCAPS_3DDEVICE); if (hal_caps.ddsCaps.dwCaps) { ok(!(hal_caps.ddsCaps.dwCaps & caps_never), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); - todo_wine_if(no3d) ok(!(~hal_caps.ddsCaps.dwCaps & caps_always), - "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); + ok(!(~hal_caps.ddsCaps.dwCaps & caps_always), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); todo_wine ok(!(~hal_caps.ddsCaps.dwCaps & caps_hal), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); } ok(!(hel_caps.ddsCaps.dwCaps & caps_never), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); - todo_wine_if(no3d) ok(!(~hel_caps.ddsCaps.dwCaps & caps_always), - "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); + ok(!(~hel_caps.ddsCaps.dwCaps & caps_always), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); todo_wine ok(!(hel_caps.ddsCaps.dwCaps & caps_hal), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); IDirectDraw4_Release(ddraw); @@ -16420,8 +16416,7 @@ static void test_caps(void) hel_caps.ddsOldCaps.dwCaps, hel_caps.ddsCaps.dwCaps); ok(!(hal_caps.ddsCaps.dwCaps & caps_never), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); - todo_wine_if(no3d) ok(!(~hal_caps.ddsCaps.dwCaps & caps_always), - "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); + ok(!(~hal_caps.ddsCaps.dwCaps & caps_always), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); todo_wine ok(!(~hal_caps.ddsCaps.dwCaps & caps_hal), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); todo_wine ok(!hel_caps.ddsCaps.dwCaps, "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); @@ -16449,8 +16444,7 @@ static void test_caps(void) todo_wine ok(!hal_caps.ddsCaps.dwCaps, "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); ok(!(hel_caps.ddsCaps.dwCaps & caps_never), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); - todo_wine_if(no3d) ok(!(~hel_caps.ddsCaps.dwCaps & caps_always), - "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); + ok(!(~hel_caps.ddsCaps.dwCaps & caps_always), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); todo_wine ok(!(hel_caps.ddsCaps.dwCaps & caps_hal), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); IDirectDraw4_Release(ddraw); diff --git a/dlls/ddraw/tests/ddraw7.c b/dlls/ddraw/tests/ddraw7.c index cd8290c4d9a..f6c5022d6a3 100644 --- a/dlls/ddraw/tests/ddraw7.c +++ b/dlls/ddraw/tests/ddraw7.c @@ -16304,7 +16304,6 @@ static void test_caps(void) DDCAPS hal_caps, hel_caps; IDirectDraw7 *ddraw; HRESULT hr; - BOOL no3d; caps_never = DDSCAPS_RESERVED1 | DDSCAPS_ALPHA @@ -16355,17 +16354,14 @@ static void test_caps(void) "Got unexpected caps %#x, expected %#x.\n", hel_caps.ddsOldCaps.dwCaps, hel_caps.ddsCaps.dwCaps); - no3d = !(hal_caps.ddsCaps.dwCaps & DDSCAPS_3DDEVICE); if (hal_caps.ddsCaps.dwCaps) { ok(!(hal_caps.ddsCaps.dwCaps & caps_never), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); - todo_wine_if(no3d) ok(!(~hal_caps.ddsCaps.dwCaps & caps_always), - "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); + ok(!(~hal_caps.ddsCaps.dwCaps & caps_always), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); todo_wine ok(!(~hal_caps.ddsCaps.dwCaps & caps_hal), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); } ok(!(hel_caps.ddsCaps.dwCaps & caps_never), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); - todo_wine_if(no3d) ok(!(~hel_caps.ddsCaps.dwCaps & caps_always), - "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); + ok(!(~hel_caps.ddsCaps.dwCaps & caps_always), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); todo_wine ok(!(hel_caps.ddsCaps.dwCaps & caps_hal), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); IDirectDraw7_Release(ddraw); @@ -16389,8 +16385,7 @@ static void test_caps(void) hel_caps.ddsOldCaps.dwCaps, hel_caps.ddsCaps.dwCaps); ok(!(hal_caps.ddsCaps.dwCaps & caps_never), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); - todo_wine_if(no3d) ok(!(~hal_caps.ddsCaps.dwCaps & caps_always), - "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); + ok(!(~hal_caps.ddsCaps.dwCaps & caps_always), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); todo_wine ok(!(~hal_caps.ddsCaps.dwCaps & caps_hal), "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); todo_wine ok(!hel_caps.ddsCaps.dwCaps, "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); @@ -16415,8 +16410,7 @@ static void test_caps(void) todo_wine ok(!hal_caps.ddsCaps.dwCaps, "Got unexpected caps %#x.\n", hal_caps.ddsCaps.dwCaps); ok(!(hel_caps.ddsCaps.dwCaps & caps_never), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); - todo_wine_if(no3d) ok(!(~hel_caps.ddsCaps.dwCaps & caps_always), - "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); + ok(!(~hel_caps.ddsCaps.dwCaps & caps_always), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); todo_wine ok(!(hel_caps.ddsCaps.dwCaps & caps_hal), "Got unexpected caps %#x.\n", hel_caps.ddsCaps.dwCaps); IDirectDraw7_Release(ddraw); diff --git a/dlls/wined3d/adapter_gl.c b/dlls/wined3d/adapter_gl.c index 958983315cb..c8187e09915 100644 --- a/dlls/wined3d/adapter_gl.c +++ b/dlls/wined3d/adapter_gl.c @@ -4372,10 +4372,7 @@ static void adapter_gl_get_wined3d_caps(const struct wined3d_adapter *adapter, s const struct wined3d_gl_info *gl_info = &adapter->gl_info; caps->ddraw_caps.dds_caps |= WINEDDSCAPS_3DDEVICE - | WINEDDSCAPS_MIPMAP - | WINEDDSCAPS_TEXTURE - | WINEDDSCAPS_VIDEOMEMORY - | WINEDDSCAPS_ZBUFFER; + | WINEDDSCAPS_VIDEOMEMORY; caps->ddraw_caps.caps |= WINEDDCAPS_3D; if (gl_info->supported[ARB_FRAMEBUFFER_OBJECT] || gl_info->supported[EXT_FRAMEBUFFER_OBJECT]) diff --git a/dlls/wined3d/adapter_vk.c b/dlls/wined3d/adapter_vk.c index 19111543ca1..3a1e817cecf 100644 --- a/dlls/wined3d/adapter_vk.c +++ b/dlls/wined3d/adapter_vk.c @@ -298,10 +298,7 @@ static void adapter_vk_get_wined3d_caps(const struct wined3d_adapter *adapter, s BOOL sampler_anisotropy = limits->maxSamplerAnisotropy > 1.0f; caps->ddraw_caps.dds_caps |= WINEDDSCAPS_3DDEVICE - | WINEDDSCAPS_MIPMAP - | WINEDDSCAPS_TEXTURE - | WINEDDSCAPS_VIDEOMEMORY - | WINEDDSCAPS_ZBUFFER; + | WINEDDSCAPS_VIDEOMEMORY; caps->ddraw_caps.caps |= WINEDDCAPS_3D; caps->Caps2 |= WINED3DCAPS2_CANGENMIPMAP; diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c index fec1b935e2c..83f90a79c86 100644 --- a/dlls/wined3d/directx.c +++ b/dlls/wined3d/directx.c @@ -2197,7 +2197,10 @@ HRESULT CDECL wined3d_get_device_caps(const struct wined3d *wined3d, unsigned in | WINEDDSCAPS_FRONTBUFFER | WINEDDSCAPS_OFFSCREENPLAIN | WINEDDSCAPS_PALETTE - | WINEDDSCAPS_PRIMARYSURFACE; + | WINEDDSCAPS_PRIMARYSURFACE + | WINEDDSCAPS_TEXTURE + | WINEDDSCAPS_ZBUFFER + | WINEDDSCAPS_MIPMAP; caps->shader_double_precision = d3d_info->shader_double_precision; caps->viewport_array_index_any_shader = d3d_info->viewport_array_index_any_shader;