diff options
author | Matt Ebb <matt@mke3.net> | 2007-10-18 13:18:04 +0400 |
---|---|---|
committer | Matt Ebb <matt@mke3.net> | 2007-10-18 13:18:04 +0400 |
commit | dac77c4749d6dcf3b35966a32e0a765589e0d716 (patch) | |
tree | 5ae3e94eb0982594d8333018aa0fbefc7f97f5d1 | |
parent | fce101e8313ec86ba6fdd3290dd31e5439187878 (diff) |
* Fix for bug # 7396 "Refraction Pass Being added to combined when not told to"
For the record, I think the way these reflection and refraction passes are handled (as a difference against the diffuse pass) is not very useful - especially if you want to do colour corrections, blurring, etc. It would be much more practical for the passes to contain the ray result returned by the raytrace...
-rw-r--r-- | source/blender/render/intern/source/rayshade.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/source/blender/render/intern/source/rayshade.c b/source/blender/render/intern/source/rayshade.c index dfcecbe50dd..08fbe8472c0 100644 --- a/source/blender/render/intern/source/rayshade.c +++ b/source/blender/render/intern/source/rayshade.c @@ -1098,8 +1098,8 @@ void ray_trace(ShadeInput *shi, ShadeResult *shr) if(shi->passflag & SCE_PASS_REFRACT) VECSUB(shr->refr, diff, olddiff); - if(shi->combinedflag & SCE_PASS_REFRACT) - VECCOPY(olddiff, diff); + if(!(shi->combinedflag & SCE_PASS_REFRACT)) + VECSUB(diff, diff, shr->refr); shr->alpha= tracol[3]; } |