diff options
author | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2013-12-31 20:33:55 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2013-12-31 21:03:22 +0400 |
commit | aaabac069fbf1454e7c7b00a1e96783ecf1563cd (patch) | |
tree | e6879ce03d2be652fe3105fe090eafd6fe567776 | |
parent | 9cd2b199994ba48f343a89a270827b2e0ed3221d (diff) |
Cycles Volume Render: these changes should have included in the last commit.
-rw-r--r-- | intern/cycles/render/graph.cpp | 13 | ||||
-rw-r--r-- | source/blender/editors/space_node/drawnode.c | 2 |
2 files changed, 9 insertions, 6 deletions
diff --git a/intern/cycles/render/graph.cpp b/intern/cycles/render/graph.cpp index 4256c5ed95b..3fae5244488 100644 --- a/intern/cycles/render/graph.cpp +++ b/intern/cycles/render/graph.cpp @@ -17,6 +17,7 @@ #include "attribute.h" #include "graph.h" #include "nodes.h" +#include "shader.h" #include "util_algorithm.h" #include "util_debug.h" @@ -121,11 +122,15 @@ void ShaderNode::attributes(Shader *shader, AttributeRequestSet *attributes) foreach(ShaderInput *input, inputs) { if(!input->link) { if(input->default_value == ShaderInput::TEXTURE_GENERATED) { - attributes->add(ATTR_STD_GENERATED); - attributes->add(ATTR_STD_GENERATED_TRANSFORM); // XXX only for volumes! + if(shader->has_surface) + attributes->add(ATTR_STD_GENERATED); + if(shader->has_volume) + attributes->add(ATTR_STD_GENERATED_TRANSFORM); + } + else if(input->default_value == ShaderInput::TEXTURE_UV) { + if(shader->has_surface) + attributes->add(ATTR_STD_UV); } - else if(input->default_value == ShaderInput::TEXTURE_UV) - attributes->add(ATTR_STD_UV); } } } diff --git a/source/blender/editors/space_node/drawnode.c b/source/blender/editors/space_node/drawnode.c index f7628375a30..72caa465406 100644 --- a/source/blender/editors/space_node/drawnode.c +++ b/source/blender/editors/space_node/drawnode.c @@ -931,8 +931,6 @@ static void node_shader_buts_volume(uiLayout *layout, bContext *C, PointerRNA *U if (cscene.data && RNA_enum_get(&cscene, "device") == 1) uiItemL(layout, IFACE_("Volumes not supported on GPU"), ICON_ERROR); - else - uiItemL(layout, IFACE_("Volumes are work in progress"), ICON_ERROR); } } |