diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2013-05-28 18:24:03 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2013-05-28 18:24:03 +0400 |
commit | 33d609144ef60c0223b2925cd39a713ed8c9060c (patch) | |
tree | 2e1ce05df337214010bef1d1844f265fb0685814 /intern/cycles/kernel/shaders/node_normal_map.osl | |
parent | ef4db04da848a9790e502300285ccd17d71b4646 (diff) |
Cycles: normal maps are now backwards compatible again after recent fix, with
a separate Blender Object/World Space that is compatible with Blender render
baking and uses the YZ flipping convention.
Diffstat (limited to 'intern/cycles/kernel/shaders/node_normal_map.osl')
-rw-r--r-- | intern/cycles/kernel/shaders/node_normal_map.osl | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/intern/cycles/kernel/shaders/node_normal_map.osl b/intern/cycles/kernel/shaders/node_normal_map.osl index 9018cca1390..2557e5ecb4b 100644 --- a/intern/cycles/kernel/shaders/node_normal_map.osl +++ b/intern/cycles/kernel/shaders/node_normal_map.osl @@ -56,13 +56,19 @@ shader node_normal_map( } } else if (space == "Object") { + Normal = normalize(transform("object", "world", vector(mcolor))); + } + else if (space == "World") { + Normal = normalize(vector(mcolor)); + } + else if (space == "Blender Object") { /* strange blender convention */ mcolor[1] = -mcolor[1]; mcolor[2] = -mcolor[2]; Normal = normalize(transform("object", "world", vector(mcolor))); } - else if (space == "World") { + else if (space == "Blender World") { /* strange blender convention */ mcolor[1] = -mcolor[1]; mcolor[2] = -mcolor[2]; |