diff options
author | Matt Ebb <matt@mke3.net> | 2010-04-02 05:28:14 +0400 |
---|---|---|
committer | Matt Ebb <matt@mke3.net> | 2010-04-02 05:28:14 +0400 |
commit | 174696fd542e966bc218957cc9a73eea14aefa06 (patch) | |
tree | f04007d75da13d078191eb8b3623dcb796026ef4 /source | |
parent | 12149d8cd968af5bf2429f3930d27bca51c1c542 (diff) |
Fix [#21874] Sun/ Sky breaks when sun is in the night rotation
Disable atmosphere when the sun lamp direction is below the horizon. This
feature needs a re-code...
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/render/intern/source/rendercore.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/source/blender/render/intern/source/rendercore.c b/source/blender/render/intern/source/rendercore.c index fbb390cdc03..047bbd7629f 100644 --- a/source/blender/render/intern/source/rendercore.c +++ b/source/blender/render/intern/source/rendercore.c @@ -739,10 +739,15 @@ static void atm_tile(RenderPart *pa, RenderLayer *rl) if(*zrect >= 9.9e10 || rgbrect[3]==0.0f) { continue; } - + if((lar->sunsky->effect_type & LA_SUN_EFFECT_AP)) { float tmp_rgb[3]; + /* skip if worldspace lamp vector is below horizon */ + if(go->ob->obmat[2][2] < 0.f) { + continue; + } + VECCOPY(tmp_rgb, rgbrect); if(rgbrect[3]!=1.0f) { /* de-premul */ float div= 1.0f/rgbrect[3]; |