mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2024-09-13 09:16:14 -07:00
tests: Disable culling in shader runners.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
This commit is contained in:
parent
ca59a3c35b
commit
a496e3a8ba
Notes:
Alexandre Julliard
2023-04-13 23:20:09 +02:00
Approved-by: Giovanni Mascellani (@giomasce) Approved-by: Zebediah Figura (@zfigura) Approved-by: Henri Verbeet (@hverbeet) Approved-by: Alexandre Julliard (@julliard) Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/140
@ -63,6 +63,7 @@ struct d3d11_shader_runner
|
||||
HWND window;
|
||||
IDXGISwapChain *swapchain;
|
||||
ID3D11DeviceContext *immediate_context;
|
||||
ID3D11RasterizerState *rasterizer_state;
|
||||
};
|
||||
|
||||
static struct d3d11_shader_runner *d3d11_shader_runner(struct shader_runner *r)
|
||||
@ -250,7 +251,9 @@ static IDXGISwapChain *create_swapchain(ID3D11Device *device, HWND window)
|
||||
static BOOL init_test_context(struct d3d11_shader_runner *runner)
|
||||
{
|
||||
unsigned int rt_width, rt_height;
|
||||
D3D11_RASTERIZER_DESC rs_desc;
|
||||
D3D11_VIEWPORT vp;
|
||||
HRESULT hr;
|
||||
RECT rect;
|
||||
|
||||
memset(runner, 0, sizeof(*runner));
|
||||
@ -279,6 +282,19 @@ static BOOL init_test_context(struct d3d11_shader_runner *runner)
|
||||
vp.MaxDepth = 1.0f;
|
||||
ID3D11DeviceContext_RSSetViewports(runner->immediate_context, 1, &vp);
|
||||
|
||||
rs_desc.FillMode = D3D11_FILL_SOLID;
|
||||
rs_desc.CullMode = D3D11_CULL_NONE;
|
||||
rs_desc.FrontCounterClockwise = FALSE;
|
||||
rs_desc.DepthBias = 0;
|
||||
rs_desc.DepthBiasClamp = 0.0f;
|
||||
rs_desc.SlopeScaledDepthBias = 0.0f;
|
||||
rs_desc.DepthClipEnable = TRUE;
|
||||
rs_desc.ScissorEnable = FALSE;
|
||||
rs_desc.MultisampleEnable = FALSE;
|
||||
rs_desc.AntialiasedLineEnable = FALSE;
|
||||
hr = ID3D11Device_CreateRasterizerState(runner->device, &rs_desc, &runner->rasterizer_state);
|
||||
ok(hr == S_OK, "Failed to create rasterizer state.\n");
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@ -286,6 +302,7 @@ static void destroy_test_context(struct d3d11_shader_runner *runner)
|
||||
{
|
||||
ULONG ref;
|
||||
|
||||
ID3D11RasterizerState_Release(runner->rasterizer_state);
|
||||
ID3D11DeviceContext_Release(runner->immediate_context);
|
||||
IDXGISwapChain_Release(runner->swapchain);
|
||||
DestroyWindow(runner->window);
|
||||
@ -594,6 +611,7 @@ static bool d3d11_runner_draw(struct shader_runner *r,
|
||||
ID3D11DeviceContext_IASetPrimitiveTopology(context, primitive_topology);
|
||||
ID3D11DeviceContext_VSSetShader(context, vs, NULL, 0);
|
||||
ID3D11DeviceContext_PSSetShader(context, ps, NULL, 0);
|
||||
ID3D11DeviceContext_RSSetState(context, runner->rasterizer_state);
|
||||
|
||||
ID3D11DeviceContext_Draw(context, vertex_count, 0);
|
||||
|
||||
|
@ -380,7 +380,7 @@ static bool d3d12_runner_draw(struct shader_runner *r,
|
||||
pso_desc.PS.pShaderBytecode = ID3D10Blob_GetBufferPointer(ps_code);
|
||||
pso_desc.PS.BytecodeLength = ID3D10Blob_GetBufferSize(ps_code);
|
||||
pso_desc.RasterizerState.FillMode = D3D12_FILL_MODE_SOLID;
|
||||
pso_desc.RasterizerState.CullMode = D3D12_CULL_MODE_BACK;
|
||||
pso_desc.RasterizerState.CullMode = D3D12_CULL_MODE_NONE;
|
||||
pso_desc.PrimitiveTopologyType = D3D12_PRIMITIVE_TOPOLOGY_TYPE_TRIANGLE;
|
||||
pso_desc.SampleDesc.Count = 1;
|
||||
pso_desc.SampleMask = ~(UINT)0;
|
||||
|
@ -418,6 +418,8 @@ static bool d3d9_runner_draw(struct shader_runner *r,
|
||||
ok(hr == D3D_OK, "Failed to set vertex shader, hr %#lx.\n", hr);
|
||||
hr = IDirect3DDevice9_SetPixelShader(device, ps);
|
||||
ok(hr == D3D_OK, "Failed to set pixel shader, hr %#lx.\n", hr);
|
||||
hr = IDirect3DDevice9_SetRenderState(device, D3DRS_CULLMODE, D3DCULL_NONE);
|
||||
ok(hr == D3D_OK, "Failed to set cull mode, hr %#lx.\n", hr);
|
||||
|
||||
hr = IDirect3DDevice9_BeginScene(device);
|
||||
ok(hr == D3D_OK, "Failed to draw, hr %#lx.\n", hr);
|
||||
|
@ -619,7 +619,7 @@ static VkPipeline create_graphics_pipeline(const struct vulkan_shader_runner *ru
|
||||
vp_desc.scissorCount = 1;
|
||||
vp_desc.pScissors = &rt_rect;
|
||||
|
||||
rs_desc.frontFace = VK_FRONT_FACE_CLOCKWISE;
|
||||
rs_desc.cullMode = VK_CULL_MODE_NONE;
|
||||
rs_desc.lineWidth = 1.0f;
|
||||
|
||||
ms_desc.rasterizationSamples = VK_SAMPLE_COUNT_1_BIT;
|
||||
|
Loading…
Reference in New Issue
Block a user