[Bf-blender-cvs] [0f8e5f4] master: Cycles: Different noise seed for stereoscopic rendering (Fix #T50024)

Dalai Felinto noreply at git.blender.org
Fri Nov 18 18:25:16 CET 2016


Commit: 0f8e5f4fb463289be1b69b1cb5eaad495ae720c6
Author: Dalai Felinto
Date:   Fri Nov 18 18:23:45 2016 +0100
Branches: master
https://developer.blender.org/rB0f8e5f4fb463289be1b69b1cb5eaad495ae720c6

Cycles: Different noise seed for stereoscopic rendering (Fix #T50024)

Patch by Sergey Sharybin.

===================================================================

M	intern/cycles/blender/blender_session.cpp

===================================================================

diff --git a/intern/cycles/blender/blender_session.cpp b/intern/cycles/blender/blender_session.cpp
index c250a54..171153d 100644
--- a/intern/cycles/blender/blender_session.cpp
+++ b/intern/cycles/blender/blender_session.cpp
@@ -32,6 +32,7 @@
 #include "util_color.h"
 #include "util_foreach.h"
 #include "util_function.h"
+#include "util_hash.h"
 #include "util_logging.h"
 #include "util_progress.h"
 #include "util_time.h"
@@ -498,7 +499,8 @@ void BlenderSession::render()
 		scene->film->tag_update(scene);
 		scene->integrator->tag_update(scene);
 
-		for(b_rr.views.begin(b_view_iter); b_view_iter != b_rr.views.end(); ++b_view_iter) {
+		int view_index = 0;
+		for(b_rr.views.begin(b_view_iter); b_view_iter != b_rr.views.end(); ++b_view_iter, ++view_index) {
 			b_rview_name = b_view_iter->name();
 
 			/* set the current view */
@@ -514,6 +516,12 @@ void BlenderSession::render()
 			                &python_thread_state,
 			                b_rlay_name.c_str());
 
+			/* Make sure all views have different noise patterns. - hardcoded value just to make it random */
+			if(view_index != 0) {
+				scene->integrator->seed += hash_int_2d(scene->integrator->seed, hash_int(view_index * 0xdeadbeef));
+				scene->integrator->tag_update(scene);
+			}
+
 			/* Update number of samples per layer. */
 			int samples = sync->get_layer_samples();
 			bool bound_samples = sync->get_layer_bound_samples();




More information about the Bf-blender-cvs mailing list