d3d9/tests: Do not use NVIDIA mode in test_alpha_to_coverage() if the reported GPU is AMD.

Otherwise, if Wine exposes the ATOC format the test will always trigger the
NVIDIA path regardless of the reported GPU.

Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Paul Gofman 2020-02-18 20:22:07 +03:30 committed by Alexandre Julliard
parent aff810578d
commit ddd5dbd8e9
1 changed files with 11 additions and 9 deletions

View File

@ -26591,19 +26591,20 @@ static void test_alpha_to_coverage(void)
return;
}
if (IDirect3D9_CheckDeviceFormat(d3d, 0, D3DDEVTYPE_HAL, D3DFMT_X8R8G8B8, 0,
D3DRTYPE_SURFACE, MAKEFOURCC('A','T','O','C')) == D3D_OK)
hr = IDirect3D9_GetAdapterIdentifier(d3d, D3DADAPTER_DEFAULT, 0, &identifier);
ok(hr == D3D_OK, "Got unexpected hr %#x.\n", hr);
if (adapter_is_amd(&identifier))
{
/* ATOC pseudo format is introduced by Nvidia. Some Intel GPUs support
* alpha to coverage the same way as Nvidia. */
nvidia_mode = TRUE;
nvidia_mode = FALSE;
}
else
{
nvidia_mode = FALSE;
hr = IDirect3D9_GetAdapterIdentifier(d3d, D3DADAPTER_DEFAULT, 0, &identifier);
ok(hr == D3D_OK, "Got unexpected hr %#x.\n", hr);
if (!adapter_is_amd(&identifier))
/* The ATOC pseudo format is introduced by NVIDIA. Some Intel GPUs
* support alpha to coverage the same way as NVIDIA. */
if (IDirect3D9_CheckDeviceFormat(d3d, 0, D3DDEVTYPE_HAL, D3DFMT_X8R8G8B8, 0,
D3DRTYPE_SURFACE, MAKEFOURCC('A','T','O','C')) != D3D_OK)
{
win_skip("Alpha to coverage is not supported.\n");
refcount = IDirect3DDevice9_Release(device);
@ -26612,6 +26613,7 @@ static void test_alpha_to_coverage(void)
DestroyWindow(window);
return;
}
nvidia_mode = TRUE;
}
hr = IDirect3DDevice9_CreateRenderTarget(device, 128, 128,