Skip to content

Commit 0880aab

Browse files
committed
[D3D12] Improve frame waits
1 parent f095112 commit 0880aab

2 files changed

Lines changed: 5 additions & 3 deletions

File tree

backends/gpu/direct3d12/sources/commandlist.c

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -85,9 +85,7 @@ void kore_d3d12_command_list_begin_render_pass(kore_gpu_command_list *list, cons
8585
if (parameters->depth_stencil_attachment.texture != NULL) {
8686
kore_gpu_texture *render_target = parameters->depth_stencil_attachment.texture;
8787

88-
if (render_target->d3d12.in_flight_frame_index > 0) {
89-
list->d3d12.blocking_frame_index = render_target->d3d12.in_flight_frame_index;
90-
}
88+
assert(render_target->d3d12.in_flight_frame_index == 0);
9189

9290
if (render_target->d3d12.resource_states[0] != D3D12_RESOURCE_STATE_DEPTH_WRITE) {
9391
D3D12_RESOURCE_BARRIER barrier;

backends/gpu/direct3d12/sources/descriptorset.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -243,6 +243,10 @@ void kore_d3d12_descriptor_set_prepare_srv_texture(kore_gpu_command_list *list,
243243
}
244244

245245
void kore_d3d12_descriptor_set_prepare_uav_texture(kore_gpu_command_list *list, const kore_gpu_texture_view *texture_view) {
246+
if (texture_view->texture->d3d12.in_flight_frame_index > 0) {
247+
list->d3d12.blocking_frame_index = texture_view->texture->d3d12.in_flight_frame_index;
248+
}
249+
246250
if (texture_view->texture->d3d12.resource_states[kore_d3d12_texture_resource_state_index(texture_view->texture, texture_view->base_mip_level, 0)] !=
247251
D3D12_RESOURCE_STATE_UNORDERED_ACCESS) {
248252
D3D12_RESOURCE_BARRIER barrier;

0 commit comments

Comments
 (0)