Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@pandora.be>2013-06-13 18:40:22 +0400
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2013-06-13 18:40:22 +0400
commita754423bd1e1ec092534abb0584197ce32403996 (patch)
treec5e6472416cfb0c53338c4b1caf8d4f504a6b9b7 /source/blender/render
parentf8bfe53ded6d9bf5d319557698174715efb7145b (diff)
Fix #35735: blender internal viewport rendering was missing SSS update when
changing angle of view.
Diffstat (limited to 'source/blender/render')
-rw-r--r--source/blender/render/intern/source/convertblender.c4
-rw-r--r--source/blender/render/intern/source/sss.c2
2 files changed, 6 insertions, 0 deletions
diff --git a/source/blender/render/intern/source/convertblender.c b/source/blender/render/intern/source/convertblender.c
index 30cb0200794..c96206643d9 100644
--- a/source/blender/render/intern/source/convertblender.c
+++ b/source/blender/render/intern/source/convertblender.c
@@ -5394,6 +5394,10 @@ void RE_DataBase_IncrementalView(Render *re, float viewmat[4][4], int restore)
invert_m4_m4(re->viewinv, re->viewmat);
env_rotate_scene(re, tmat, !restore);
+
+ /* SSS points distribution depends on view */
+ if ((re->r.mode & R_SSS) && !re->test_break(re->tbh))
+ make_sss_tree(re);
}
diff --git a/source/blender/render/intern/source/sss.c b/source/blender/render/intern/source/sss.c
index 7a58d20be10..fbf11ae1cd3 100644
--- a/source/blender/render/intern/source/sss.c
+++ b/source/blender/render/intern/source/sss.c
@@ -993,6 +993,8 @@ static void sss_free_tree(SSSData *sss)
void make_sss_tree(Render *re)
{
Material *mat;
+
+ free_sss(re);
re->sss_hash= BLI_ghash_ptr_new("make_sss_tree gh");