diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2008-01-29 01:34:14 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2008-01-29 01:34:14 +0300 |
commit | db9f702db9087c6377b7da8e48ceb3fef7d93a3c (patch) | |
tree | b2a585e2ab18fed52e060870566ce1929e33dcd4 /source | |
parent | 9b0c2efeed6cfff4502328c41cac0a8424b2bd77 (diff) |
- Fix for approximate AO pixel cache crash.
- Fix in FSA pass sample adding (more fixes to come).
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/render/intern/source/occlusion.c | 2 | ||||
-rw-r--r-- | source/blender/render/intern/source/zbuf.c | 8 |
2 files changed, 5 insertions, 5 deletions
diff --git a/source/blender/render/intern/source/occlusion.c b/source/blender/render/intern/source/occlusion.c index e1d491c69d9..de0c1166661 100644 --- a/source/blender/render/intern/source/occlusion.c +++ b/source/blender/render/intern/source/occlusion.c @@ -1581,7 +1581,7 @@ void cache_occ_samples(Render *re, RenderPart *pa, ShadeSample *ssamp) sample= cache->sample; ps.next= NULL; - ps.mask= 0xFFFF; + ps.mask= (1<<re->osa); ro= pa->recto; rp= pa->rectp; diff --git a/source/blender/render/intern/source/zbuf.c b/source/blender/render/intern/source/zbuf.c index 3acce279836..5a24d435f49 100644 --- a/source/blender/render/intern/source/zbuf.c +++ b/source/blender/render/intern/source/zbuf.c @@ -3637,9 +3637,9 @@ static void shade_strand_samples(StrandShadeCache *cache, ShadeSample *ssamp, in sseg.v[2]= svert+1; sseg.v[3]= (row->segment < sseg.strand->totvert-2)? svert+2: svert+1; + ssamp->tot= 1; strand_shade_segment(&R, cache, &sseg, ssamp, row->v, row->u, addpassflag); ssamp->shi[0].mask= row->mask; - ssamp->tot= 1; } static void unref_strand_samples(StrandShadeCache *cache, ZTranspRow *row, int totface) @@ -3765,7 +3765,7 @@ static void addvecmul(float *v1, float *v2, float fac) v1[2]= v1[2]+fac*v2[2]; } -int addtosamp_shr(ShadeResult *samp_shr, ShadeSample *ssamp, int addpassflag) +static int addtosamp_shr(ShadeResult *samp_shr, ShadeSample *ssamp, int addpassflag) { int a, sample, osa = (R.osa? R.osa: 1), retval = osa; @@ -3825,7 +3825,7 @@ int addtosamp_shr(ShadeResult *samp_shr, ShadeSample *ssamp, int addpassflag) return retval; } -void reset_sky_speedvectors(RenderPart *pa, RenderLayer *rl, float *rectf) +static void reset_sky_speedvectors(RenderPart *pa, RenderLayer *rl, float *rectf) { /* speed vector exception... if solid render was done, sky pixels are set to zero already */ /* for all pixels with alpha zero, we re-initialize speed again then */ @@ -4080,7 +4080,7 @@ unsigned short *zbuffer_transp_shade(RenderPart *pa, RenderLayer *rl, float *pas addAlphaOverFloat(rl->rectf + 4*od, samp_shr[a].combined); - add_transp_passes(rl, od, samp_shr, alpha); + add_transp_passes(rl, od, &samp_shr[a], alpha); if(addpassflag & SCE_PASS_VECTOR) add_transp_speed(rl, od, samp_shr[a].winspeed, alpha, rdrect); } |