mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2025-01-28 13:05:02 -08:00
vkd3d: Update command list to ID3D12GraphicsCommandList1.
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:
parent
d0f8443ac5
commit
f1bfb1305e
@ -216,6 +216,18 @@ typedef struct D3D12_RANGE
|
||||
SIZE_T End;
|
||||
} D3D12_RANGE;
|
||||
|
||||
typedef struct D3D12_RANGE_UINT64
|
||||
{
|
||||
UINT64 Begin;
|
||||
UINT64 End;
|
||||
} D3D12_RANGE_UINT64;
|
||||
|
||||
typedef struct D3D12_SUBRESOURCE_RANGE_UINT64
|
||||
{
|
||||
UINT Subresource;
|
||||
D3D12_RANGE_UINT64 Range;
|
||||
} D3D12_SUBRESOURCE_RANGE_UINT64;
|
||||
|
||||
typedef struct D3D12_RESOURCE_ALLOCATION_INFO
|
||||
{
|
||||
UINT64 SizeInBytes;
|
||||
@ -513,6 +525,20 @@ typedef struct D3D12_RESOURCE_DESC
|
||||
D3D12_RESOURCE_FLAGS Flags;
|
||||
} D3D12_RESOURCE_DESC;
|
||||
|
||||
typedef enum D3D12_RESOLVE_MODE
|
||||
{
|
||||
D3D12_RESOLVE_MODE_DECOMPRESS = 0,
|
||||
D3D12_RESOLVE_MODE_MIN = 1,
|
||||
D3D12_RESOLVE_MODE_MAX = 2,
|
||||
D3D12_RESOLVE_MODE_AVERAGE = 3,
|
||||
} D3D12_RESOLVE_MODE;
|
||||
|
||||
typedef struct D3D12_SAMPLE_POSITION
|
||||
{
|
||||
INT8 X;
|
||||
INT8 Y;
|
||||
} D3D12_SAMPLE_POSITION;
|
||||
|
||||
typedef enum D3D12_TEXTURE_COPY_TYPE
|
||||
{
|
||||
D3D12_TEXTURE_COPY_TYPE_SUBRESOURCE_INDEX = 0,
|
||||
@ -1917,6 +1943,35 @@ interface ID3D12GraphicsCommandList : ID3D12CommandList
|
||||
ID3D12Resource *count_buffer, UINT64 count_buffer_offset);
|
||||
}
|
||||
|
||||
[
|
||||
uuid(553103fb-1fe7-4557-bb38-946d7d0e7ca7),
|
||||
object,
|
||||
local,
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface ID3D12GraphicsCommandList1 : ID3D12GraphicsCommandList
|
||||
{
|
||||
void AtomicCopyBufferUINT(ID3D12Resource *dst_buffer, UINT64 dst_offset,
|
||||
ID3D12Resource *src_buffer, UINT64 src_offset,
|
||||
UINT dependent_resource_count, ID3D12Resource * const *dependent_resources,
|
||||
const D3D12_SUBRESOURCE_RANGE_UINT64 *dependent_sub_resource_ranges);
|
||||
|
||||
void AtomicCopyBufferUINT64(ID3D12Resource *dst_buffer, UINT64 dst_offset,
|
||||
ID3D12Resource *src_buffer, UINT64 src_offset,
|
||||
UINT dependent_resource_count, ID3D12Resource * const *dependent_resources,
|
||||
const D3D12_SUBRESOURCE_RANGE_UINT64 *dependent_sub_resource_ranges);
|
||||
|
||||
void OMSetDepthBounds(FLOAT min, FLOAT max);
|
||||
|
||||
void SetSamplePositions(UINT sample_count, UINT pixel_count,
|
||||
D3D12_SAMPLE_POSITION *sample_positions);
|
||||
|
||||
void ResolveSubresourceRegion(ID3D12Resource *dst_resource,
|
||||
UINT dst_sub_resource_idx, UINT dst_x, UINT dst_y,
|
||||
ID3D12Resource *src_resource, UINT src_sub_resource_idx,
|
||||
D3D12_RECT *src_rect, DXGI_FORMAT format, D3D12_RESOLVE_MODE mode);
|
||||
}
|
||||
|
||||
typedef enum D3D12_TILE_RANGE_FLAGS
|
||||
{
|
||||
D3D12_TILE_RANGE_FLAG_NONE = 0x0,
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1745,8 +1745,8 @@ static HRESULT STDMETHODCALLTYPE d3d12_device_CreateCommandList(ID3D12Device *if
|
||||
initial_pipeline_state, &object)))
|
||||
return hr;
|
||||
|
||||
return return_interface(&object->ID3D12GraphicsCommandList_iface,
|
||||
&IID_ID3D12GraphicsCommandList, riid, command_list);
|
||||
return return_interface(&object->ID3D12GraphicsCommandList1_iface,
|
||||
&IID_ID3D12GraphicsCommandList1, riid, command_list);
|
||||
}
|
||||
|
||||
/* Direct3D feature levels restrict which formats can be optionally supported. */
|
||||
|
@ -778,7 +778,7 @@ struct vkd3d_pipeline_bindings
|
||||
/* ID3D12CommandList */
|
||||
struct d3d12_command_list
|
||||
{
|
||||
ID3D12GraphicsCommandList ID3D12GraphicsCommandList_iface;
|
||||
ID3D12GraphicsCommandList1 ID3D12GraphicsCommandList1_iface;
|
||||
LONG refcount;
|
||||
|
||||
D3D12_COMMAND_LIST_TYPE type;
|
||||
|
Loading…
x
Reference in New Issue
Block a user