diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2015-05-09 17:22:16 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2015-05-09 17:22:16 +0300 |
commit | 6fc166967989072bda085ae4cf54fc513f6f1daf (patch) | |
tree | fa5e0d9f33200fce7b16e6de5528ff8bf790a45e /intern/cycles/render/shader.h | |
parent | 17c95d0a96e306b2f38ff6e489064d6f021e494c (diff) |
Cycles: Initial work towards selective nodes support compilation
The goal is to be able to compile kernel with nodes which are actually needed
to render current scene, hence improving performance of the kernel,
The idea is:
- Have few node groups, starting with a group which contains nodes are used
really often, and then couple of groups which will be extension of this one.
- Have feature-based nodes disabling, so it's possible to disable nodes related
to features which are not used with the currently used nodes group.
This commit only lays down needed routines for this approach, actual split will
happen later after gathering statistics from bunch of production scenes.
Diffstat (limited to 'intern/cycles/render/shader.h')
-rw-r--r-- | intern/cycles/render/shader.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/intern/cycles/render/shader.h b/intern/cycles/render/shader.h index 5bcb2c4e344..27b239601d0 100644 --- a/intern/cycles/render/shader.h +++ b/intern/cycles/render/shader.h @@ -165,6 +165,9 @@ public: * have any shader assigned explicitly */ static void add_default(Scene *scene); + /* Selective nodes compilation. */ + void get_requested_features(Scene *scene, int& max_group, int& features); + protected: ShaderManager(); |