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
path: root/intern
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2016-11-16 17:12:31 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2016-11-16 17:32:00 +0300
commit2a2eb0c463bd96d42f7306eb17f88cad87f73aea (patch)
tree70ce5010bd25cff07a63e0dd95dd7a80cbb30951 /intern
parent209bc9977c9754d3ad5d4cf550a460eb56814686 (diff)
Cycles: Fix different noise pattern from fix in T49838:
No need to hash subframe == 0.
Diffstat (limited to 'intern')
-rw-r--r--intern/cycles/blender/blender_sync.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/intern/cycles/blender/blender_sync.cpp b/intern/cycles/blender/blender_sync.cpp
index 8ec9ecfd861..6118cc72239 100644
--- a/intern/cycles/blender/blender_sync.cpp
+++ b/intern/cycles/blender/blender_sync.cpp
@@ -257,9 +257,14 @@ void BlenderSync::sync_integrator()
integrator->seed = get_int(cscene, "seed");
if(get_boolean(cscene, "use_animated_seed")) {
integrator->seed = hash_int_2d(b_scene.frame_current(),
- get_int(cscene, "seed")) +
- hash_int_2d((int)(b_scene.frame_subframe() * (float)INT_MAX),
get_int(cscene, "seed"));
+ if(b_scene.frame_subframe() != 0.0f) {
+ /* TODO(sergey): Ideally should be some sort of hash_merge,
+ * but this is good enough for now.
+ */
+ integrator->seed += hash_int_2d((int)(b_scene.frame_subframe() * (float)INT_MAX),
+ get_int(cscene, "seed"));
+ }
}
integrator->sampling_pattern = (SamplingPattern)get_enum(