Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'intern/cycles/render/graph.cpp')
-rw-r--r--intern/cycles/render/graph.cpp19
1 files changed, 15 insertions, 4 deletions
diff --git a/intern/cycles/render/graph.cpp b/intern/cycles/render/graph.cpp
index 54acc6e14cd..cdded403cbe 100644
--- a/intern/cycles/render/graph.cpp
+++ b/intern/cycles/render/graph.cpp
@@ -117,9 +117,14 @@ ShaderOutput *ShaderNode::add_output(const char *name, ShaderSocketType type)
void ShaderNode::attributes(AttributeRequestSet *attributes)
{
- foreach(ShaderInput *input, inputs)
- if(!input->link && input->default_value == ShaderInput::TEXTURE_COORDINATE)
- attributes->add(Attribute::STD_GENERATED);
+ foreach(ShaderInput *input, inputs) {
+ if(!input->link) {
+ if(input->default_value == ShaderInput::TEXTURE_GENERATED)
+ attributes->add(Attribute::STD_GENERATED);
+ else if(input->default_value == ShaderInput::TEXTURE_UV)
+ attributes->add(Attribute::STD_UV);
+ }
+ }
}
/* Graph */
@@ -347,12 +352,18 @@ void ShaderGraph::default_inputs(bool do_osl)
foreach(ShaderNode *node, nodes) {
foreach(ShaderInput *input, node->inputs) {
if(!input->link && !(input->osl_only && !do_osl)) {
- if(input->default_value == ShaderInput::TEXTURE_COORDINATE) {
+ if(input->default_value == ShaderInput::TEXTURE_GENERATED) {
if(!texco)
texco = new TextureCoordinateNode();
connect(texco->output("Generated"), input);
}
+ else if(input->default_value == ShaderInput::TEXTURE_UV) {
+ if(!texco)
+ texco = new TextureCoordinateNode();
+
+ connect(texco->output("UV"), input);
+ }
else if(input->default_value == ShaderInput::INCOMING) {
if(!geom)
geom = new GeometryNode();