Eevee: Render: Force normal buffer creation if needed.

This commit is contained in:
Clément Foucault 2018-02-03 03:00:39 +01:00
parent e1d5d55b56
commit 956a7bc3ea
1 changed files with 9 additions and 1 deletions

View File

@ -105,9 +105,10 @@ void EEVEE_effects_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata, Object
EEVEE_FramebufferList *fbl = vedata->fbl;
EEVEE_TextureList *txl = vedata->txl;
EEVEE_EffectsInfo *effects;
const DRWContextState *draw_ctx = DRW_context_state_get();
ViewLayer *view_layer = draw_ctx->view_layer;
const float *viewport_size = DRW_viewport_size_get();
/* Shaders */
if (!e_data.downsample_sh) {
eevee_create_shader_downsample();
@ -129,6 +130,13 @@ void EEVEE_effects_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata, Object
effects->enabled_effects |= EEVEE_screen_raytrace_init(sldata, vedata);
effects->enabled_effects |= EEVEE_volumes_init(sldata, vedata);
/* Force normal buffer creation. */
if (DRW_state_is_image_render() &&
(view_layer->passflag & SCE_PASS_NORMAL) != 0)
{
effects->enabled_effects |= EFFECT_NORMAL_BUFFER;
}
/**
* Ping Pong buffer
*/