diff options
Diffstat (limited to 'source/blender/render')
-rw-r--r-- | source/blender/render/extern/include/RE_engine.h | 5 | ||||
-rw-r--r-- | source/blender/render/intern/source/external_engine.c | 2 | ||||
-rw-r--r-- | source/blender/render/intern/source/render_result.c | 9 |
3 files changed, 13 insertions, 3 deletions
diff --git a/source/blender/render/extern/include/RE_engine.h b/source/blender/render/extern/include/RE_engine.h index 12e9123b5cb..88614de1641 100644 --- a/source/blender/render/extern/include/RE_engine.h +++ b/source/blender/render/extern/include/RE_engine.h @@ -26,6 +26,7 @@ #include "DNA_listBase.h" #include "DNA_scene_types.h" +#include "DNA_node_types.h" #include "RNA_types.h" #include "RE_bake.h" @@ -117,7 +118,7 @@ typedef void (*update_render_passes_cb_t)(void *userdata, const char *name, int channels, const char *chanid, - int type); + eNodeSocketDatatype type); typedef struct RenderEngine { RenderEngineType *type; @@ -212,7 +213,7 @@ void RE_engine_register_pass(struct RenderEngine *engine, const char *name, int channels, const char *chanid, - int type); + eNodeSocketDatatype type); /* Engine Types */ diff --git a/source/blender/render/intern/source/external_engine.c b/source/blender/render/intern/source/external_engine.c index 90058da5f0c..598f300cf86 100644 --- a/source/blender/render/intern/source/external_engine.c +++ b/source/blender/render/intern/source/external_engine.c @@ -863,7 +863,7 @@ void RE_engine_register_pass(struct RenderEngine *engine, const char *name, int channels, const char *chanid, - int type) + eNodeSocketDatatype type) { if (!(scene && view_layer && engine && engine->update_render_passes_cb)) { return; diff --git a/source/blender/render/intern/source/render_result.c b/source/blender/render/intern/source/render_result.c index 120787a8d13..b2225d70eaf 100644 --- a/source/blender/render/intern/source/render_result.c +++ b/source/blender/render/intern/source/render_result.c @@ -442,6 +442,15 @@ RenderResult *render_result_new(Render *re, if (view_layer->passflag & SCE_PASS_SUBSURFACE_COLOR) { RENDER_LAYER_ADD_PASS_SAFE(rr, rl, 3, RE_PASSNAME_SUBSURFACE_COLOR, view, "RGB"); } + if (view_layer->eevee.render_passes & EEVEE_RENDER_PASS_BLOOM) { + RENDER_LAYER_ADD_PASS_SAFE(rr, rl, 3, RE_PASSNAME_BLOOM, view, "RGB"); + } + if (view_layer->eevee.render_passes & EEVEE_RENDER_PASS_VOLUME_SCATTER) { + RENDER_LAYER_ADD_PASS_SAFE(rr, rl, 3, RE_PASSNAME_VOLUME_SCATTER, view, "RGB"); + } + if (view_layer->eevee.render_passes & EEVEE_RENDER_PASS_VOLUME_TRANSMITTANCE) { + RENDER_LAYER_ADD_PASS_SAFE(rr, rl, 3, RE_PASSNAME_VOLUME_TRANSMITTANCE, view, "RGB"); + } #undef RENDER_LAYER_ADD_PASS_SAFE } } |