diff options
author | Alexander Romanov <a.romanov@blend4web.com> | 2016-06-07 10:33:32 +0300 |
---|---|---|
committer | Alexander Romanov <a.romanov@blend4web.com> | 2016-06-07 10:42:29 +0300 |
commit | 0da13ad1ebea9e880a0cd7e1d8b32ea567aef174 (patch) | |
tree | 53fc3b010e14d615161f908a6b93fdc3b333e284 /source/blender/render/extern/include/RE_shader_ext.h | |
parent | 441a440cbbb700511d6d1ec01e2f149355adcc02 (diff) |
World space switch for BI nodes.
At the moment light shading in Blender is produced in viewspace. Apparently, that's why
shader nodes work with normals in camera space. But it is not convenient for artists.
The more convenient approach is implemented in Cycles where normals are represented in world space.
Blend4Web Team designed the engine keeping in mind shader parameters readability,
so normals are interpreted in world space as well. And now our users have to use some tweaks, like
empty node group with the name "Replace", which is replacing one input by another on the engine side
(replacing working configuration in Blender Viewport by the configuration that has the same behavior in the engine).
This patch adds the ability to switch to world space for normals and lamp vector in BI and Viewport.
This patch is very important to us and we crave to see this patch in Blender 2.7 because
it will significantly simplify Blend4Web material creation workflow.
{F315547}
{F315548}
Reviewers: campbellbarton, brecht
Reviewed By: brecht
Subscribers: homyachetser, Evgeny_Rodygin, AlexKowel, yurikovelenov
Differential Revision: https://developer.blender.org/D2046
Diffstat (limited to 'source/blender/render/extern/include/RE_shader_ext.h')
-rw-r--r-- | source/blender/render/extern/include/RE_shader_ext.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/source/blender/render/extern/include/RE_shader_ext.h b/source/blender/render/extern/include/RE_shader_ext.h index 8b6dfb88b73..73867de6b2e 100644 --- a/source/blender/render/extern/include/RE_shader_ext.h +++ b/source/blender/render/extern/include/RE_shader_ext.h @@ -172,6 +172,7 @@ typedef struct ShadeInput { /* from initialize, part or renderlayer */ bool do_preview; /* for nodes, in previewrender */ bool do_manage; /* color management flag */ + bool use_world_space_shading; short thread, sample; /* sample: ShadeSample array index */ short nodes; /* indicate node shading, temp hack to prevent recursion */ |