diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2012-11-27 01:59:41 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2012-11-27 01:59:41 +0400 |
commit | ceed3ef640bb40e1232feeb409220fe19011bc43 (patch) | |
tree | 48ad960f483ad185718b14bbc605b6182732f56c /intern/cycles/render/svm.h | |
parent | eab58bf994323a53311543d7d706b0be87ffe197 (diff) |
Fix #32907: failure rendering a complex node setup, hitting fixed max number
of closures limit. Optimized the code now so it can handle more.
Change SVM mix/add closure handling, now we transform the node graph so that
the mix weights are fed into the closure nodes directly.
Diffstat (limited to 'intern/cycles/render/svm.h')
-rw-r--r-- | intern/cycles/render/svm.h | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/intern/cycles/render/svm.h b/intern/cycles/render/svm.h index c7b66d97289..720531c8c4b 100644 --- a/intern/cycles/render/svm.h +++ b/intern/cycles/render/svm.h @@ -130,14 +130,7 @@ protected: void generate_closure(ShaderNode *node, set<ShaderNode*>& done); /* multi closure */ - struct MultiClosureData { - int stack_offset; - int users; - }; - - void generate_multi_closure(ShaderNode *node, set<ShaderNode*>& done, - map<ShaderNode*,MultiClosureData>& closure_data, uint in_offset); - void count_closure_users(ShaderNode *node, map<ShaderNode*, MultiClosureData>& closure_data); + void generate_multi_closure(ShaderNode *node, set<ShaderNode*>& done); /* compile */ void compile_type(Shader *shader, ShaderGraph *graph, ShaderType type); |