diff options
Diffstat (limited to 'source/blender/render/intern/source/rendercore.c')
-rw-r--r-- | source/blender/render/intern/source/rendercore.c | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/source/blender/render/intern/source/rendercore.c b/source/blender/render/intern/source/rendercore.c index 77f399d08d1..c9072105dd9 100644 --- a/source/blender/render/intern/source/rendercore.c +++ b/source/blender/render/intern/source/rendercore.c @@ -246,7 +246,7 @@ static void halo_tile(RenderPart *pa, RenderLayer *rl) intptr_t *rd= NULL; int a, *rz, zz, y, sample, totsample, od; short minx, maxx, miny, maxy, x; - unsigned int lay= rl->lay; + unsigned int lay= (1 << 20) - 1; /* we don't render halos in the cropped area, gives errors in flare counter */ if (pa->crop) { @@ -1651,7 +1651,7 @@ void zbufshade_sss_tile(RenderPart *pa) ssamp.tot= 1; for (rl=rr->layers.first; rl; rl=rl->next) { - ssamp.shi[0].lay |= rl->lay; + ssamp.shi[0].lay |= (1 << 20) - 1; ssamp.shi[0].layflag |= rl->layflag; ssamp.shi[0].passflag |= rl->passflag; ssamp.shi[0].combinedflag |= ~rl->pass_xor; @@ -1660,8 +1660,6 @@ void zbufshade_sss_tile(RenderPart *pa) rl= rr->layers.first; ssamp.shi[0].passflag |= SCE_PASS_RGBA|SCE_PASS_COMBINED; ssamp.shi[0].combinedflag &= ~(SCE_PASS_SPEC); - ssamp.shi[0].mat_override= NULL; - ssamp.shi[0].light_override= NULL; lay= ssamp.shi[0].lay; /* create the pixelstrs to be used later */ @@ -1978,7 +1976,7 @@ void add_halo_flare(Render *re) for (a=0; a<R.tothalo; a++) { har= R.sortedhalos[a]; - if (har->flarec && (har->lay & rl->lay)) { + if (har->flarec && (har->lay & ((1 << 20) - 1))) { do_draw = true; renderflare(rr, rect, har); } @@ -1994,18 +1992,18 @@ void add_halo_flare(Render *re) } } -void render_internal_update_passes(RenderEngine *engine, Scene *scene, SceneRenderLayer *srl) +void render_internal_update_passes(RenderEngine *engine, Scene *scene, ViewLayer *view_layer) { int type; - RE_engine_register_pass(engine, scene, srl, RE_PASSNAME_COMBINED, 4, "RGBA", SOCK_RGBA); + RE_engine_register_pass(engine, scene, view_layer, RE_PASSNAME_COMBINED, 4, "RGBA", SOCK_RGBA); #define CHECK_PASS(name, channels, chanid) \ - if (srl->passflag & (SCE_PASS_ ## name)) { \ + if (view_layer->passflag & (SCE_PASS_ ## name)) { \ if (channels == 4) type = SOCK_RGBA; \ else if (channels == 3) type = SOCK_VECTOR; \ else type = SOCK_FLOAT; \ - RE_engine_register_pass(engine, scene, srl, RE_PASSNAME_ ## name, channels, chanid, type); \ + RE_engine_register_pass(engine, scene, view_layer, RE_PASSNAME_ ## name, channels, chanid, type); \ } CHECK_PASS(Z, 1, "Z"); |