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:
authorBrecht Van Lommel <brechtvanlommel@gmail.com>2019-04-16 04:03:24 +0300
committerBrecht Van Lommel <brechtvanlommel@gmail.com>2019-04-23 19:53:37 +0300
commitc07bce5bf2b35d66a5574b40f8d9378086e9117f (patch)
tree82deef172b78fc85bb5b037fdceeae0dac5b3a5c /intern
parent8982f0cfee417f3cc9612666db1eac4f3e965de9 (diff)
Fix T63796: Cycles OSL shader with closure not working in final render.
Diffstat (limited to 'intern')
-rw-r--r--intern/cycles/render/session.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/intern/cycles/render/session.cpp b/intern/cycles/render/session.cpp
index d4b1a5e843b..beb82f2ab7d 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();