diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2009-10-15 13:56:10 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2009-10-15 13:56:10 +0400 |
commit | 29e738f60c1cafc33b8006425f1fad4c1721d971 (patch) | |
tree | 9875f3be10ab48087ec904760ed52a22f642f087 /source/blender/render | |
parent | a28b9512fe51a829cbab692f7505d9aa66a9ad5e (diff) |
Bugfix: deep shadow buffer commit made mixed solid/ztransp rendering
not work correct without OSA.
Diffstat (limited to 'source/blender/render')
-rw-r--r-- | source/blender/render/intern/source/zbuf.c | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/source/blender/render/intern/source/zbuf.c b/source/blender/render/intern/source/zbuf.c index a7b9867715f..6e305a2b82b 100644 --- a/source/blender/render/intern/source/zbuf.c +++ b/source/blender/render/intern/source/zbuf.c @@ -3181,15 +3181,19 @@ static void copyto_abufz(RenderPart *pa, int *arectz, int *rectmask, int sample) int x, y, *rza, *rma; intptr_t *rd; - if((R.osa==0 && !pa->rectz) || !pa->rectdaps) { - fillrect(arectz, pa->rectx, pa->recty, 0x7FFFFFFE); - return; - } - if(R.osa==0) { - memcpy(arectz, pa->rectz, sizeof(int)*pa->rectx*pa->recty); + if(!pa->rectz) + fillrect(arectz, pa->rectx, pa->recty, 0x7FFFFFFE); + else + memcpy(arectz, pa->rectz, sizeof(int)*pa->rectx*pa->recty); + if(rectmask && pa->rectmask) memcpy(rectmask, pa->rectmask, sizeof(int)*pa->rectx*pa->recty); + + return; + } + else if(!pa->rectdaps) { + fillrect(arectz, pa->rectx, pa->recty, 0x7FFFFFFE); return; } |