diff options
author | Philip Rebohle <philip.rebohle@tu-dortmund.de> | 2021-11-19 16:38:04 +0300 |
---|---|---|
committer | Hans-Kristian Arntzen <post@arntzen-software.no> | 2021-11-19 16:57:51 +0300 |
commit | 9185edb42a3219113e86e3a48f84ce271ac65b17 (patch) | |
tree | 10d1896a7e75624e468be451279b37cf757a2e50 | |
parent | b03c1fcb5f5543c37bfee70efb0c7478d12a2062 (diff) |
vkd3d: Implement ID3D12GraphicsCommandList6.
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
-rw-r--r-- | libs/vkd3d/bundle.c | 99 | ||||
-rw-r--r-- | libs/vkd3d/command.c | 10 | ||||
-rw-r--r-- | libs/vkd3d/command_list_profiled.h | 9 | ||||
-rw-r--r-- | libs/vkd3d/vkd3d_private.h | 2 |
4 files changed, 79 insertions, 41 deletions
diff --git a/libs/vkd3d/bundle.c b/libs/vkd3d/bundle.c index 7834e737..48df4b63 100644 --- a/libs/vkd3d/bundle.c +++ b/libs/vkd3d/bundle.c @@ -261,12 +261,13 @@ static HRESULT STDMETHODCALLTYPE d3d12_bundle_QueryInterface(d3d12_command_list_ || IsEqualGUID(iid, &IID_ID3D12GraphicsCommandList3) || IsEqualGUID(iid, &IID_ID3D12GraphicsCommandList4) || IsEqualGUID(iid, &IID_ID3D12GraphicsCommandList5) + || IsEqualGUID(iid, &IID_ID3D12GraphicsCommandList6) || IsEqualGUID(iid, &IID_ID3D12CommandList) || IsEqualGUID(iid, &IID_ID3D12DeviceChild) || IsEqualGUID(iid, &IID_ID3D12Object) || IsEqualGUID(iid, &IID_IUnknown)) { - ID3D12GraphicsCommandList5_AddRef(iface); + ID3D12GraphicsCommandList6_AddRef(iface); *object = iface; return S_OK; } @@ -429,7 +430,7 @@ static void d3d12_bundle_exec_draw_instanced(d3d12_command_list_iface *list, con { const struct d3d12_draw_instanced_command *args = args_v; - ID3D12GraphicsCommandList5_DrawInstanced(list, args->vertex_count, + ID3D12GraphicsCommandList6_DrawInstanced(list, args->vertex_count, args->instance_count, args->first_vertex, args->first_instance); } @@ -466,7 +467,7 @@ static void d3d12_bundle_exec_draw_indexed_instanced(d3d12_command_list_iface *l { const struct d3d12_draw_indexed_instanced_command *args = args_v; - ID3D12GraphicsCommandList5_DrawIndexedInstanced(list, args->index_count, + ID3D12GraphicsCommandList6_DrawIndexedInstanced(list, args->index_count, args->instance_count, args->first_index, args->vertex_offset, args->first_instance); } @@ -501,7 +502,7 @@ static void d3d12_bundle_exec_dispatch(d3d12_command_list_iface *list, const voi { const struct d3d12_dispatch_command *args = args_v; - ID3D12GraphicsCommandList5_Dispatch(list, args->x, args->y, args->z); + ID3D12GraphicsCommandList6_Dispatch(list, args->x, args->y, args->z); } static void STDMETHODCALLTYPE d3d12_bundle_Dispatch(d3d12_command_list_iface *iface, @@ -569,7 +570,7 @@ static void d3d12_bundle_exec_ia_set_primitive_topology(d3d12_command_list_iface { const struct d3d12_ia_set_primitive_topology_command *args = args_v; - ID3D12GraphicsCommandList5_IASetPrimitiveTopology(list, args->topology); + ID3D12GraphicsCommandList6_IASetPrimitiveTopology(list, args->topology); } static void STDMETHODCALLTYPE d3d12_bundle_IASetPrimitiveTopology(d3d12_command_list_iface *iface, @@ -606,7 +607,7 @@ static void d3d12_bundle_exec_om_set_blend_factor(d3d12_command_list_iface *list { const struct d3d12_om_set_blend_factor_command *args = args_v; - ID3D12GraphicsCommandList5_OMSetBlendFactor(list, args->blend_factor); + ID3D12GraphicsCommandList6_OMSetBlendFactor(list, args->blend_factor); } static void STDMETHODCALLTYPE d3d12_bundle_OMSetBlendFactor(d3d12_command_list_iface *iface, @@ -634,7 +635,7 @@ static void d3d12_bundle_exec_om_set_stencil_ref(d3d12_command_list_iface *list, { const struct d3d12_om_set_stencil_ref_command *args = args_v; - ID3D12GraphicsCommandList5_OMSetStencilRef(list, args->stencil_ref); + ID3D12GraphicsCommandList6_OMSetStencilRef(list, args->stencil_ref); } static void STDMETHODCALLTYPE d3d12_bundle_OMSetStencilRef(d3d12_command_list_iface *iface, @@ -659,7 +660,7 @@ static void d3d12_bundle_exec_set_pipeline_state(d3d12_command_list_iface *list, { const struct d3d12_set_pipeline_state_command *args = args_v; - ID3D12GraphicsCommandList5_SetPipelineState(list, args->pipeline_state); + ID3D12GraphicsCommandList6_SetPipelineState(list, args->pipeline_state); } static void STDMETHODCALLTYPE d3d12_bundle_SetPipelineState(d3d12_command_list_iface *iface, @@ -703,7 +704,7 @@ static void d3d12_bundle_exec_set_compute_root_signature(d3d12_command_list_ifac { const struct d3d12_set_root_signature_command *args = args_v; - ID3D12GraphicsCommandList5_SetComputeRootSignature(list, args->root_signature); + ID3D12GraphicsCommandList6_SetComputeRootSignature(list, args->root_signature); } static void STDMETHODCALLTYPE d3d12_bundle_SetComputeRootSignature(d3d12_command_list_iface *iface, @@ -722,7 +723,7 @@ static void d3d12_bundle_exec_set_graphics_root_signature(d3d12_command_list_ifa { const struct d3d12_set_root_signature_command *args = args_v; - ID3D12GraphicsCommandList5_SetGraphicsRootSignature(list, args->root_signature); + ID3D12GraphicsCommandList6_SetGraphicsRootSignature(list, args->root_signature); } static void STDMETHODCALLTYPE d3d12_bundle_SetGraphicsRootSignature(d3d12_command_list_iface *iface, @@ -748,7 +749,7 @@ static void d3d12_bundle_exec_set_compute_root_descriptor_table(d3d12_command_li { const struct d3d12_set_root_descriptor_table_command *args = args_v; - ID3D12GraphicsCommandList5_SetComputeRootDescriptorTable(list, args->parameter_index, args->base_descriptor); + ID3D12GraphicsCommandList6_SetComputeRootDescriptorTable(list, args->parameter_index, args->base_descriptor); } static void STDMETHODCALLTYPE d3d12_bundle_SetComputeRootDescriptorTable(d3d12_command_list_iface *iface, @@ -769,7 +770,7 @@ static void d3d12_bundle_exec_set_graphics_root_descriptor_table(d3d12_command_l { const struct d3d12_set_root_descriptor_table_command *args = args_v; - ID3D12GraphicsCommandList5_SetGraphicsRootDescriptorTable(list, args->parameter_index, args->base_descriptor); + ID3D12GraphicsCommandList6_SetGraphicsRootDescriptorTable(list, args->parameter_index, args->base_descriptor); } static void STDMETHODCALLTYPE d3d12_bundle_SetGraphicsRootDescriptorTable(d3d12_command_list_iface *iface, @@ -798,7 +799,7 @@ static void d3d12_bundle_exec_set_compute_root_32bit_constant(d3d12_command_list { const struct d3d12_set_root_32bit_constant_command *args = args_v; - ID3D12GraphicsCommandList5_SetComputeRoot32BitConstant(list, args->parameter_index, args->data, args->offset); + ID3D12GraphicsCommandList6_SetComputeRoot32BitConstant(list, args->parameter_index, args->data, args->offset); } static void STDMETHODCALLTYPE d3d12_bundle_SetComputeRoot32BitConstant(d3d12_command_list_iface *iface, @@ -820,7 +821,7 @@ static void d3d12_bundle_exec_set_graphics_root_32bit_constant(d3d12_command_lis { const struct d3d12_set_root_32bit_constant_command *args = args_v; - ID3D12GraphicsCommandList5_SetGraphicsRoot32BitConstant(list, args->parameter_index, args->data, args->offset); + ID3D12GraphicsCommandList6_SetGraphicsRoot32BitConstant(list, args->parameter_index, args->data, args->offset); } static void STDMETHODCALLTYPE d3d12_bundle_SetGraphicsRoot32BitConstant(d3d12_command_list_iface *iface, @@ -851,7 +852,7 @@ static void d3d12_bundle_exec_set_compute_root_32bit_constants(d3d12_command_lis { const struct d3d12_set_root_32bit_constants_command *args = args_v; - ID3D12GraphicsCommandList5_SetComputeRoot32BitConstants(list, args->parameter_index, + ID3D12GraphicsCommandList6_SetComputeRoot32BitConstants(list, args->parameter_index, args->constant_count, args->data, args->offset); } @@ -879,7 +880,7 @@ static void d3d12_bundle_exec_set_graphics_root_32bit_constants(d3d12_command_li { const struct d3d12_set_root_32bit_constants_command *args = args_v; - ID3D12GraphicsCommandList5_SetGraphicsRoot32BitConstants(list, args->parameter_index, + ID3D12GraphicsCommandList6_SetGraphicsRoot32BitConstants(list, args->parameter_index, args->constant_count, args->data, args->offset); } @@ -914,7 +915,7 @@ static void d3d12_bundle_exec_set_compute_root_cbv(d3d12_command_list_iface *lis { const struct d3d12_set_root_descriptor_command *args = args_v; - ID3D12GraphicsCommandList5_SetComputeRootConstantBufferView(list, args->parameter_index, args->address); + ID3D12GraphicsCommandList6_SetComputeRootConstantBufferView(list, args->parameter_index, args->address); } static void STDMETHODCALLTYPE d3d12_bundle_SetComputeRootConstantBufferView( @@ -935,7 +936,7 @@ static void d3d12_bundle_exec_set_graphics_root_cbv(d3d12_command_list_iface *li { const struct d3d12_set_root_descriptor_command *args = args_v; - ID3D12GraphicsCommandList5_SetGraphicsRootConstantBufferView(list, args->parameter_index, args->address); + ID3D12GraphicsCommandList6_SetGraphicsRootConstantBufferView(list, args->parameter_index, args->address); } static void STDMETHODCALLTYPE d3d12_bundle_SetGraphicsRootConstantBufferView( @@ -956,7 +957,7 @@ static void d3d12_bundle_exec_set_compute_root_srv(d3d12_command_list_iface *lis { const struct d3d12_set_root_descriptor_command *args = args_v; - ID3D12GraphicsCommandList5_SetComputeRootShaderResourceView(list, args->parameter_index, args->address); + ID3D12GraphicsCommandList6_SetComputeRootShaderResourceView(list, args->parameter_index, args->address); } static void STDMETHODCALLTYPE d3d12_bundle_SetComputeRootShaderResourceView( @@ -977,7 +978,7 @@ static void d3d12_bundle_exec_set_graphics_root_srv(d3d12_command_list_iface *li { const struct d3d12_set_root_descriptor_command *args = args_v; - ID3D12GraphicsCommandList5_SetGraphicsRootShaderResourceView(list, args->parameter_index, args->address); + ID3D12GraphicsCommandList6_SetGraphicsRootShaderResourceView(list, args->parameter_index, args->address); } static void STDMETHODCALLTYPE d3d12_bundle_SetGraphicsRootShaderResourceView( @@ -998,7 +999,7 @@ static void d3d12_bundle_exec_set_compute_root_uav(d3d12_command_list_iface *lis { const struct d3d12_set_root_descriptor_command *args = args_v; - ID3D12GraphicsCommandList5_SetComputeRootUnorderedAccessView(list, args->parameter_index, args->address); + ID3D12GraphicsCommandList6_SetComputeRootUnorderedAccessView(list, args->parameter_index, args->address); } static void STDMETHODCALLTYPE d3d12_bundle_SetComputeRootUnorderedAccessView( @@ -1019,7 +1020,7 @@ static void d3d12_bundle_exec_set_graphics_root_uav(d3d12_command_list_iface *li { const struct d3d12_set_root_descriptor_command *args = args_v; - ID3D12GraphicsCommandList5_SetGraphicsRootUnorderedAccessView(list, args->parameter_index, args->address); + ID3D12GraphicsCommandList6_SetGraphicsRootUnorderedAccessView(list, args->parameter_index, args->address); } static void STDMETHODCALLTYPE d3d12_bundle_SetGraphicsRootUnorderedAccessView( @@ -1044,14 +1045,14 @@ struct d3d12_ia_set_index_buffer_command static void d3d12_bundle_exec_ia_set_index_buffer_null(d3d12_command_list_iface *list, const void *args_v) { - ID3D12GraphicsCommandList5_IASetIndexBuffer(list, NULL); + ID3D12GraphicsCommandList6_IASetIndexBuffer(list, NULL); } static void d3d12_bundle_exec_ia_set_index_buffer(d3d12_command_list_iface *list, const void *args_v) { const struct d3d12_ia_set_index_buffer_command *args = args_v; - ID3D12GraphicsCommandList5_IASetIndexBuffer(list, &args->view); + ID3D12GraphicsCommandList6_IASetIndexBuffer(list, &args->view); } static void STDMETHODCALLTYPE d3d12_bundle_IASetIndexBuffer(d3d12_command_list_iface *iface, @@ -1201,7 +1202,7 @@ static void d3d12_bundle_exec_set_marker(d3d12_command_list_iface *list, const v { const struct d3d12_debug_marker_command *args = args_v; - ID3D12GraphicsCommandList5_SetMarker(list, args->metadata, args->data, args->data_size); + ID3D12GraphicsCommandList6_SetMarker(list, args->metadata, args->data, args->data_size); } static void STDMETHODCALLTYPE d3d12_bundle_SetMarker(d3d12_command_list_iface *iface, @@ -1222,7 +1223,7 @@ static void d3d12_bundle_exec_begin_event(d3d12_command_list_iface *list, const { const struct d3d12_debug_marker_command *args = args_v; - ID3D12GraphicsCommandList5_BeginEvent(list, args->metadata, args->data, args->data_size); + ID3D12GraphicsCommandList6_BeginEvent(list, args->metadata, args->data, args->data_size); } static void STDMETHODCALLTYPE d3d12_bundle_BeginEvent(d3d12_command_list_iface *iface, @@ -1241,7 +1242,7 @@ static void STDMETHODCALLTYPE d3d12_bundle_BeginEvent(d3d12_command_list_iface * static void d3d12_bundle_exec_end_event(d3d12_command_list_iface *list, const void *args_v) { - ID3D12GraphicsCommandList5_EndEvent(list); + ID3D12GraphicsCommandList6_EndEvent(list); } static void STDMETHODCALLTYPE d3d12_bundle_EndEvent(d3d12_command_list_iface *iface) @@ -1268,7 +1269,7 @@ static void d3d12_bundle_exec_execute_indirect(d3d12_command_list_iface *list, c { const struct d3d12_execute_indirect_command *args = args_v; - ID3D12GraphicsCommandList5_ExecuteIndirect(list, args->signature, args->max_count, + ID3D12GraphicsCommandList6_ExecuteIndirect(list, args->signature, args->max_count, args->arg_buffer, args->arg_offset, args->count_buffer, args->count_offset); } @@ -1330,7 +1331,7 @@ static void d3d12_bundle_exec_om_set_depth_bounds(d3d12_command_list_iface *list { const struct d3d12_om_set_depth_bounds_command *args = args_v; - ID3D12GraphicsCommandList5_OMSetDepthBounds(list, args->min, args->max); + ID3D12GraphicsCommandList6_OMSetDepthBounds(list, args->min, args->max); } static void STDMETHODCALLTYPE d3d12_bundle_OMSetDepthBounds(d3d12_command_list_iface *iface, @@ -1359,7 +1360,7 @@ static void d3d12_bundle_exec_set_sample_positions(d3d12_command_list_iface *lis const struct d3d12_set_sample_positions_command *args = args_v; /* The sample position array is non-const but does not get written to */ - ID3D12GraphicsCommandList5_SetSamplePositions(list, args->sample_count, + ID3D12GraphicsCommandList6_SetSamplePositions(list, args->sample_count, args->pixel_count, (D3D12_SAMPLE_POSITION*)args->positions); } @@ -1402,7 +1403,7 @@ static void d3d12_bundle_exec_set_view_instance_mask(d3d12_command_list_iface *l { const struct d3d12_set_view_instance_mask_command *args = args_v; - ID3D12GraphicsCommandList5_SetViewInstanceMask(list, args->mask); + ID3D12GraphicsCommandList6_SetViewInstanceMask(list, args->mask); } static void STDMETHODCALLTYPE d3d12_bundle_SetViewInstanceMask(d3d12_command_list_iface *iface, UINT mask) @@ -1428,7 +1429,7 @@ static void d3d12_bundle_exec_write_buffer_immediate(d3d12_command_list_iface *l { const struct d3d12_write_buffer_immediate_command *args = args_v; - ID3D12GraphicsCommandList5_WriteBufferImmediate(list, args->count, args->parameters, args->modes); + ID3D12GraphicsCommandList6_WriteBufferImmediate(list, args->count, args->parameters, args->modes); } static void STDMETHODCALLTYPE d3d12_bundle_WriteBufferImmediate(d3d12_command_list_iface *iface, @@ -1524,7 +1525,7 @@ static void d3d12_bundle_exec_set_pipeline_state1(d3d12_command_list_iface *list { const struct d3d12_set_pipeline_state1_command *args = args_v; - ID3D12GraphicsCommandList5_SetPipelineState1(list, args->state_object); + ID3D12GraphicsCommandList6_SetPipelineState1(list, args->state_object); } static void STDMETHODCALLTYPE d3d12_bundle_SetPipelineState1(d3d12_command_list_iface *iface, @@ -1549,7 +1550,7 @@ static void d3d12_bundle_exec_dispatch_rays(d3d12_command_list_iface *list, cons { const struct d3d12_dispatch_rays_command *args = args_v; - ID3D12GraphicsCommandList5_DispatchRays(list, &args->desc); + ID3D12GraphicsCommandList6_DispatchRays(list, &args->desc); } static void STDMETHODCALLTYPE d3d12_bundle_DispatchRays(d3d12_command_list_iface *iface, @@ -1575,14 +1576,14 @@ static void d3d12_bundle_exec_rs_set_shading_rate(d3d12_command_list_iface *list { const struct d3d12_rs_set_shading_rate_command *args = args_v; - ID3D12GraphicsCommandList5_RSSetShadingRate(list, args->base, args->combiners); + ID3D12GraphicsCommandList6_RSSetShadingRate(list, args->base, args->combiners); } static void d3d12_bundle_exec_rs_set_shading_rate_base(d3d12_command_list_iface *list, const void *args_v) { const struct d3d12_rs_set_shading_rate_command *args = args_v; - ID3D12GraphicsCommandList5_RSSetShadingRate(list, args->base, NULL); + ID3D12GraphicsCommandList6_RSSetShadingRate(list, args->base, NULL); } static void STDMETHODCALLTYPE d3d12_bundle_RSSetShadingRate(d3d12_command_list_iface *iface, @@ -1612,7 +1613,7 @@ static void d3d12_bundle_exec_rs_set_shading_rate_image(d3d12_command_list_iface { const struct d3d12_rs_set_shading_rate_image_command *args = args_v; - ID3D12GraphicsCommandList5_RSSetShadingRateImage(list, args->image); + ID3D12GraphicsCommandList6_RSSetShadingRateImage(list, args->image); } static void STDMETHODCALLTYPE d3d12_bundle_RSSetShadingRateImage(d3d12_command_list_iface *iface, @@ -1627,7 +1628,27 @@ static void STDMETHODCALLTYPE d3d12_bundle_RSSetShadingRateImage(d3d12_command_l args->image = image; } -static CONST_VTBL struct ID3D12GraphicsCommandList5Vtbl d3d12_bundle_vtbl = +static void d3d12_bundle_exec_dispatch_mesh(d3d12_command_list_iface *list, const void *args_v) +{ + const struct d3d12_dispatch_command *args = args_v; + + ID3D12GraphicsCommandList6_DispatchMesh(list, args->x, args->y, args->z); +} + +static void STDMETHODCALLTYPE d3d12_bundle_DispatchMesh(d3d12_command_list_iface *iface, UINT x, UINT y, UINT z) +{ + struct d3d12_bundle *bundle = impl_from_ID3D12GraphicsCommandList(iface); + struct d3d12_dispatch_command *args; + + TRACE("iface %p, x %u, y %u, z %u.\n", iface, x, y, z); + + args = d3d12_bundle_add_command(bundle, &d3d12_bundle_exec_dispatch_mesh, sizeof(*args)); + args->x = x; + args->y = y; + args->z = z; +} + +static CONST_VTBL struct ID3D12GraphicsCommandList6Vtbl d3d12_bundle_vtbl = { /* IUnknown methods */ d3d12_bundle_QueryInterface, @@ -1718,6 +1739,8 @@ static CONST_VTBL struct ID3D12GraphicsCommandList5Vtbl d3d12_bundle_vtbl = /* ID3D12GraphicsCommandList5 methods */ d3d12_bundle_RSSetShadingRate, d3d12_bundle_RSSetShadingRateImage, + /* ID3D12GraphicsCommandList6 methods */ + d3d12_bundle_DispatchMesh, }; HRESULT d3d12_bundle_create(struct d3d12_device *device, diff --git a/libs/vkd3d/command.c b/libs/vkd3d/command.c index be0f608d..47ee1a55 100644 --- a/libs/vkd3d/command.c +++ b/libs/vkd3d/command.c @@ -3860,6 +3860,7 @@ HRESULT STDMETHODCALLTYPE d3d12_command_list_QueryInterface(d3d12_command_list_i || IsEqualGUID(iid, &IID_ID3D12GraphicsCommandList3) || IsEqualGUID(iid, &IID_ID3D12GraphicsCommandList4) || IsEqualGUID(iid, &IID_ID3D12GraphicsCommandList5) + || IsEqualGUID(iid, &IID_ID3D12GraphicsCommandList6) || IsEqualGUID(iid, &IID_ID3D12CommandList) || IsEqualGUID(iid, &IID_ID3D12DeviceChild) || IsEqualGUID(iid, &IID_ID3D12Object) @@ -9541,7 +9542,12 @@ static void STDMETHODCALLTYPE d3d12_command_list_RSSetShadingRateImage(d3d12_com list->vrs_image = vrs_image; } -static CONST_VTBL struct ID3D12GraphicsCommandList5Vtbl d3d12_command_list_vtbl = +static void STDMETHODCALLTYPE d3d12_command_list_DispatchMesh(d3d12_command_list_iface *iface, UINT x, UINT y, UINT z) +{ + FIXME("iface %p, x %u, y %u, z %u stub!", iface, x, y, z); +} + +static CONST_VTBL struct ID3D12GraphicsCommandList6Vtbl d3d12_command_list_vtbl = { /* IUnknown methods */ d3d12_command_list_QueryInterface, @@ -9632,6 +9638,8 @@ static CONST_VTBL struct ID3D12GraphicsCommandList5Vtbl d3d12_command_list_vtbl /* ID3D12GraphicsCommandList5 methods */ d3d12_command_list_RSSetShadingRate, d3d12_command_list_RSSetShadingRateImage, + /* ID3D12GraphicsCommandList6 methods */ + d3d12_command_list_DispatchMesh, }; #ifdef VKD3D_ENABLE_PROFILING diff --git a/libs/vkd3d/command_list_profiled.h b/libs/vkd3d/command_list_profiled.h index 9b519d97..3d74b15f 100644 --- a/libs/vkd3d/command_list_profiled.h +++ b/libs/vkd3d/command_list_profiled.h @@ -459,7 +459,12 @@ static void STDMETHODCALLTYPE d3d12_command_list_RSSetShadingRateImage_profiled( COMMAND_LIST_PROFILED_CALL(RSSetShadingRateImage, iface, image); } -static CONST_VTBL struct ID3D12GraphicsCommandList5Vtbl d3d12_command_list_vtbl_profiled = +static void STDMETHODCALLTYPE d3d12_command_list_DispatchMesh_profiled(d3d12_command_list_iface *iface, UINT x, UINT y, UINT z) +{ + COMMAND_LIST_PROFILED_CALL(DispatchMesh, iface, x, y, z); +} + +static CONST_VTBL struct ID3D12GraphicsCommandList6Vtbl d3d12_command_list_vtbl_profiled = { /* IUnknown methods */ d3d12_command_list_QueryInterface, @@ -550,6 +555,8 @@ static CONST_VTBL struct ID3D12GraphicsCommandList5Vtbl d3d12_command_list_vtbl_ /* ID3D12GraphicsCommandList5 methods */ d3d12_command_list_RSSetShadingRate_profiled, d3d12_command_list_RSSetShadingRateImage_profiled, + /* ID3D12GraphicsCommandList6 methods */ + d3d12_command_list_DispatchMesh_profiled, }; #endif diff --git a/libs/vkd3d/vkd3d_private.h b/libs/vkd3d/vkd3d_private.h index e31d7fe2..d89dce38 100644 --- a/libs/vkd3d/vkd3d_private.h +++ b/libs/vkd3d/vkd3d_private.h @@ -1822,7 +1822,7 @@ struct vkd3d_dynamic_state }; /* ID3D12CommandList */ -typedef ID3D12GraphicsCommandList5 d3d12_command_list_iface; +typedef ID3D12GraphicsCommandList6 d3d12_command_list_iface; enum vkd3d_initial_transition_type { |