diff --git a/libs/vkd3d/command.c b/libs/vkd3d/command.c index 309dffd3..bfecd5aa 100644 --- a/libs/vkd3d/command.c +++ b/libs/vkd3d/command.c @@ -4385,6 +4385,14 @@ static void d3d12_command_list_reset_state(struct d3d12_command_list *list, d3d12_command_list_reset_internal_state(list); } +static inline void d3d12_command_list_invalidate_all_state(struct d3d12_command_list *list) +{ + d3d12_command_list_invalidate_current_pipeline(list, true); + d3d12_command_list_invalidate_root_parameters(list, VK_PIPELINE_BIND_POINT_GRAPHICS, true); + d3d12_command_list_invalidate_root_parameters(list, VK_PIPELINE_BIND_POINT_COMPUTE, true); + list->index_buffer.is_dirty = true; +} + static HRESULT STDMETHODCALLTYPE d3d12_command_list_Reset(d3d12_command_list_iface *iface, ID3D12CommandAllocator *allocator, ID3D12PipelineState *initial_pipeline_state) {