From c07bce5bf2b35d66a5574b40f8d9378086e9117f Mon Sep 17 00:00:00 2001 From: Brecht Van Lommel Date: Tue, 16 Apr 2019 03:03:24 +0200 Subject: Fix T63796: Cycles OSL shader with closure not working in final render. --- intern/cycles/render/session.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'intern') 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(); -- cgit v1.2.3