Merge pull request #88649 from clayjohn/RD-ss-barriers

Use barriers between all blur passes with SSAO and SSIL
This commit is contained in:
Rémi Verschelde 2024-02-22 11:23:40 +01:00
commit 8bad68df1a
No known key found for this signature in database
GPG key ID: C3336907360768E1

View file

@ -899,10 +899,9 @@ void SSEffects::screen_space_indirect_lighting(Ref<RenderSceneBuffersRD> p_rende
int y_groups = p_ssil_buffers.buffer_height;
RD::get_singleton()->compute_list_dispatch_threads(compute_list, x_groups, y_groups, 1);
if (ssil_quality > RS::ENV_SSIL_QUALITY_VERY_LOW) {
RD::get_singleton()->compute_list_add_barrier(compute_list);
}
}
RD::get_singleton()->compute_list_add_barrier(compute_list);
}
RD::get_singleton()->draw_command_end_label(); // Blur
@ -1285,9 +1284,7 @@ void SSEffects::generate_ssao(Ref<RenderSceneBuffersRD> p_render_buffers, SSAORe
RD::get_singleton()->compute_list_dispatch_threads(compute_list, p_ssao_buffers.buffer_width, p_ssao_buffers.buffer_height, 1);
}
if (ssao_quality > RS::ENV_SSAO_QUALITY_VERY_LOW) {
RD::get_singleton()->compute_list_add_barrier(compute_list);
}
RD::get_singleton()->compute_list_add_barrier(compute_list);
}
RD::get_singleton()->draw_command_end_label(); // Blur
}