mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2025-04-13 05:43:18 -07:00
tests: Fix test failures in conditional rendering tests.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com> Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
committed by
Alexandre Julliard
parent
8d03148e11
commit
18991337b7
@@ -30932,6 +30932,13 @@ static void test_conditional_rendering(void)
|
|||||||
command_list = context.list;
|
command_list = context.list;
|
||||||
queue = context.queue;
|
queue = context.queue;
|
||||||
|
|
||||||
|
if (is_intel_windows_device(context.device))
|
||||||
|
{
|
||||||
|
skip("Predicated rendering is broken on Intel.\n");
|
||||||
|
destroy_test_context(&context);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
conditions = create_default_buffer(context.device, sizeof(predicate_args),
|
conditions = create_default_buffer(context.device, sizeof(predicate_args),
|
||||||
D3D12_RESOURCE_FLAG_NONE, D3D12_RESOURCE_STATE_COPY_DEST);
|
D3D12_RESOURCE_FLAG_NONE, D3D12_RESOURCE_STATE_COPY_DEST);
|
||||||
upload_buffer_data(conditions, 0, sizeof(predicate_args), &predicate_args, queue, command_list);
|
upload_buffer_data(conditions, 0, sizeof(predicate_args), &predicate_args, queue, command_list);
|
||||||
@@ -30950,7 +30957,7 @@ static void test_conditional_rendering(void)
|
|||||||
transition_resource_state(command_list, context.render_target,
|
transition_resource_state(command_list, context.render_target,
|
||||||
D3D12_RESOURCE_STATE_RENDER_TARGET, D3D12_RESOURCE_STATE_COPY_SOURCE);
|
D3D12_RESOURCE_STATE_RENDER_TARGET, D3D12_RESOURCE_STATE_COPY_SOURCE);
|
||||||
|
|
||||||
check_sub_resource_uint(context.render_target, 0, queue, command_list, 0xffffffff, 0);
|
todo check_sub_resource_uint(context.render_target, 0, queue, command_list, 0x00000000, 0);
|
||||||
|
|
||||||
reset_command_list(command_list, context.allocator);
|
reset_command_list(command_list, context.allocator);
|
||||||
transition_resource_state(command_list, context.render_target,
|
transition_resource_state(command_list, context.render_target,
|
||||||
|
@@ -323,14 +323,15 @@ static void init_adapter_info(void)
|
|||||||
IDXGIAdapter_Release(dxgi_adapter);
|
IDXGIAdapter_Release(dxgi_adapter);
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline bool is_amd_windows_device(ID3D12Device *device)
|
static inline bool get_adapter_desc(ID3D12Device *device, DXGI_ADAPTER_DESC *desc)
|
||||||
{
|
{
|
||||||
DXGI_ADAPTER_DESC desc = {0};
|
|
||||||
IDXGIFactory4 *factory;
|
IDXGIFactory4 *factory;
|
||||||
IDXGIAdapter *adapter;
|
IDXGIAdapter *adapter;
|
||||||
HRESULT hr;
|
HRESULT hr;
|
||||||
LUID luid;
|
LUID luid;
|
||||||
|
|
||||||
|
memset(desc, 0, sizeof(*desc));
|
||||||
|
|
||||||
if (!vkd3d_test_platform_is_windows())
|
if (!vkd3d_test_platform_is_windows())
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
@@ -342,14 +343,27 @@ static inline bool is_amd_windows_device(ID3D12Device *device)
|
|||||||
hr = IDXGIFactory4_EnumAdapterByLuid(factory, luid, &IID_IDXGIAdapter, (void **)&adapter);
|
hr = IDXGIFactory4_EnumAdapterByLuid(factory, luid, &IID_IDXGIAdapter, (void **)&adapter);
|
||||||
if (SUCCEEDED(hr))
|
if (SUCCEEDED(hr))
|
||||||
{
|
{
|
||||||
hr = IDXGIAdapter_GetDesc(adapter, &desc);
|
hr = IDXGIAdapter_GetDesc(adapter, desc);
|
||||||
ok(hr == S_OK, "Failed to get adapter desc, hr %#x.\n", hr);
|
ok(hr == S_OK, "Failed to get adapter desc, hr %#x.\n", hr);
|
||||||
IDXGIAdapter_Release(adapter);
|
IDXGIAdapter_Release(adapter);
|
||||||
}
|
}
|
||||||
|
|
||||||
IDXGIFactory4_Release(factory);
|
IDXGIFactory4_Release(factory);
|
||||||
|
return SUCCEEDED(hr);
|
||||||
|
}
|
||||||
|
|
||||||
return desc.VendorId == 0x1002;
|
static inline bool is_amd_windows_device(ID3D12Device *device)
|
||||||
|
{
|
||||||
|
DXGI_ADAPTER_DESC desc;
|
||||||
|
|
||||||
|
return get_adapter_desc(device, &desc) && desc.VendorId == 0x1002;
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline bool is_intel_windows_device(ID3D12Device *device)
|
||||||
|
{
|
||||||
|
DXGI_ADAPTER_DESC desc;
|
||||||
|
|
||||||
|
return get_adapter_desc(device, &desc) && desc.VendorId == 0x8086;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline bool is_mesa_device(ID3D12Device *device)
|
static inline bool is_mesa_device(ID3D12Device *device)
|
||||||
@@ -566,6 +580,11 @@ static inline bool is_amd_windows_device(ID3D12Device *device)
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline bool is_intel_windows_device(ID3D12Device *device)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
static inline bool is_mesa_device(ID3D12Device *device)
|
static inline bool is_mesa_device(ID3D12Device *device)
|
||||||
{
|
{
|
||||||
VkPhysicalDeviceDriverPropertiesKHR properties;
|
VkPhysicalDeviceDriverPropertiesKHR properties;
|
||||||
|
Reference in New Issue
Block a user