Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/draw/engines/eevee/eevee_renderpasses.c')
-rw-r--r--source/blender/draw/engines/eevee/eevee_renderpasses.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/source/blender/draw/engines/eevee/eevee_renderpasses.c b/source/blender/draw/engines/eevee/eevee_renderpasses.c
index 2f9e8f3d555..e9dcb6376bb 100644
--- a/source/blender/draw/engines/eevee/eevee_renderpasses.c
+++ b/source/blender/draw/engines/eevee/eevee_renderpasses.c
@@ -88,7 +88,17 @@ void EEVEE_renderpasses_init(EEVEE_Data *vedata)
View3D *v3d = draw_ctx->v3d;
if (v3d) {
- g_data->render_passes = v3d->shading.render_pass;
+ const Scene *scene = draw_ctx->scene;
+ eViewLayerEEVEEPassType render_pass = v3d->shading.render_pass;
+ if (render_pass == EEVEE_RENDER_PASS_AO &&
+ ((scene->eevee.flag & SCE_EEVEE_GTAO_ENABLED) == 0)) {
+ render_pass = EEVEE_RENDER_PASS_COMBINED;
+ }
+ else if (render_pass == EEVEE_RENDER_PASS_BLOOM &&
+ ((scene->eevee.flag & SCE_EEVEE_BLOOM_ENABLED) == 0)) {
+ render_pass = EEVEE_RENDER_PASS_COMBINED;
+ }
+ g_data->render_passes = render_pass;
}
else {
eViewLayerEEVEEPassType enabled_render_passes = view_layer->eevee.render_passes;