[#20455] Spotlight halo with deep buffers: render crashes

This commit is contained in:
Campbell Barton
2010-01-03 03:18:48 +00:00
parent 5266969546
commit a93e2d3603
3 changed files with 3 additions and 3 deletions

View File

@@ -136,7 +136,7 @@ typedef struct Lamp {
#define LA_SQUARE 128
#define LA_TEXTURE 256
#define LA_OSATEX 512
#define LA_DEEP_SHADOW 1024
/* #define LA_DEEP_SHADOW 1024 */ /* not used anywhere */
#define LA_NO_DIFF 2048
#define LA_NO_SPEC 4096
#define LA_SHAD_RAY 8192

View File

@@ -3630,7 +3630,7 @@ static GroupObject *add_render_lamp(Render *re, Object *ob)
}
/* set flag for spothalo en initvars */
if(la->type==LA_SPOT && (la->mode & LA_HALO)) {
if(la->type==LA_SPOT && (la->mode & LA_HALO) && (la->buftype != LA_SHADBUF_DEEP)) {
if(la->haint>0.0) {
re->flag |= R_LAMPHALO;

View File

@@ -354,7 +354,7 @@ void renderspothalo(ShadeInput *shi, float *col, float alpha)
lar= go->lampren;
if(lar==NULL) continue;
if(lar->type==LA_SPOT && (lar->mode & LA_HALO) && lar->haint>0) {
if(lar->type==LA_SPOT && (lar->mode & LA_HALO) && (lar->buftype != LA_SHADBUF_DEEP) && lar->haint>0) {
if(lar->mode & LA_LAYER)
if(shi->vlr && (lar->lay & shi->obi->lay)==0)