[Bf-blender-cvs] [6a50a3d140d] master: Fix T63346: Cycles OSL shader with closure not working in final render.

Brecht Van Lommel noreply at git.blender.org
Tue Apr 16 03:04:07 CEST 2019


Commit: 6a50a3d140d7050dcfa391eb55d5a03720b06f3a
Author: Brecht Van Lommel
Date:   Tue Apr 16 03:03:24 2019 +0200
Branches: master
https://developer.blender.org/rB6a50a3d140d7050dcfa391eb55d5a03720b06f3a

Fix T63346: Cycles OSL shader with closure not working in final render.

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

M	intern/cycles/render/session.cpp

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

diff --git a/intern/cycles/render/session.cpp b/intern/cycles/render/session.cpp
index e9274fbf49e..e88d960d9d2 100644
--- a/intern/cycles/render/session.cpp
+++ b/intern/cycles/render/session.cpp
@@ -1131,6 +1131,12 @@ void Session::collect_statistics(RenderStats *render_stats)
 
 int Session::get_max_closure_count()
 {
+	if (scene->shader_manager->use_osl()) {
+		/* OSL always needs the maximum as we can't predict the
+		 * number of closures a shader might generate. */
+		return MAX_CLOSURE;
+	}
+
 	int max_closures = 0;
 	for(int i = 0; i < scene->shaders.size(); i++) {
 		int num_closures = scene->shaders[i]->graph->get_num_closures();



More information about the Bf-blender-cvs mailing list