Fix #4403
Render: the Lamp-halo (spots) didn't respect the local view-layer options in the RenderLayers.
This commit is contained in:
@@ -393,7 +393,8 @@ static void renderspothalo(ShadeInput *shi, float *col, float alpha)
|
||||
lar= go->lampren;
|
||||
|
||||
if(lar->type==LA_SPOT && (lar->mode & LA_HALO) && lar->haint>0) {
|
||||
|
||||
if((lar->lay & shi->lay)==0) continue;
|
||||
|
||||
spothalo(lar, shi, &i);
|
||||
if(i>0.0) {
|
||||
col[3]+= i*alpha; // all premul
|
||||
@@ -556,6 +557,8 @@ static void lamphalo_tile(RenderPart *pa, float *pass, unsigned int lay)
|
||||
long *rd= pa->rectdaps;
|
||||
int x, y, *rz= pa->rectz;
|
||||
|
||||
shi.lay= lay;
|
||||
|
||||
for(y=pa->disprect.ymin; y<pa->disprect.ymax; y++) {
|
||||
for(x=pa->disprect.xmin; x<pa->disprect.xmax; x++, rz++, pass+=4) {
|
||||
|
||||
|
||||
Reference in New Issue
Block a user