Cycles: image texture node now uses UV as default texture coordinate,
instead of generated.
This commit is contained in:
parent
aff03aa778
commit
4c3b94fdbd
@ -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();
|
||||
|
@ -96,7 +96,8 @@ protected:
|
||||
class ShaderInput {
|
||||
public:
|
||||
enum DefaultValue {
|
||||
TEXTURE_COORDINATE,
|
||||
TEXTURE_GENERATED,
|
||||
TEXTURE_UV,
|
||||
INCOMING,
|
||||
NORMAL,
|
||||
POSITION,
|
||||
|
@ -47,7 +47,7 @@ ImageTextureNode::ImageTextureNode()
|
||||
filename = "";
|
||||
color_space = ustring("sRGB");
|
||||
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_COORDINATE);
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_UV);
|
||||
add_output("Color", SHADER_SOCKET_COLOR);
|
||||
add_output("Alpha", SHADER_SOCKET_FLOAT);
|
||||
}
|
||||
@ -285,7 +285,7 @@ void SkyTextureNode::compile(OSLCompiler& compiler)
|
||||
NoiseTextureNode::NoiseTextureNode()
|
||||
: ShaderNode("noise_texture")
|
||||
{
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_COORDINATE);
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_GENERATED);
|
||||
add_output("Color", SHADER_SOCKET_COLOR);
|
||||
add_output("Fac", SHADER_SOCKET_FLOAT);
|
||||
}
|
||||
@ -350,7 +350,7 @@ BlendTextureNode::BlendTextureNode()
|
||||
progression = ustring("Linear");
|
||||
axis = ustring("Horizontal");
|
||||
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_COORDINATE);
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_GENERATED);
|
||||
add_output("Fac", SHADER_SOCKET_FLOAT);
|
||||
}
|
||||
|
||||
@ -402,7 +402,7 @@ CloudsTextureNode::CloudsTextureNode()
|
||||
depth = 2;
|
||||
|
||||
add_input("Size", SHADER_SOCKET_FLOAT, 0.25f);
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_COORDINATE);
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_GENERATED);
|
||||
|
||||
add_output("Color", SHADER_SOCKET_COLOR);
|
||||
add_output("Fac", SHADER_SOCKET_FLOAT);
|
||||
@ -479,7 +479,7 @@ VoronoiTextureNode::VoronoiTextureNode()
|
||||
add_input("Weight3", SHADER_SOCKET_FLOAT, 0.0f);
|
||||
add_input("Weight4", SHADER_SOCKET_FLOAT, 0.0f);
|
||||
add_input("Exponent", SHADER_SOCKET_FLOAT, 2.5f);
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_COORDINATE);
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_GENERATED);
|
||||
|
||||
add_output("Color", SHADER_SOCKET_COLOR);
|
||||
add_output("Fac", SHADER_SOCKET_FLOAT);
|
||||
@ -557,7 +557,7 @@ MusgraveTextureNode::MusgraveTextureNode()
|
||||
add_input("Offset", SHADER_SOCKET_FLOAT, 0.0f);
|
||||
add_input("Gain", SHADER_SOCKET_FLOAT, 1.0f);
|
||||
add_input("Size", SHADER_SOCKET_FLOAT, 0.25f);
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_COORDINATE);
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_GENERATED);
|
||||
|
||||
add_output("Fac", SHADER_SOCKET_FLOAT);
|
||||
}
|
||||
@ -641,7 +641,7 @@ MarbleTextureNode::MarbleTextureNode()
|
||||
|
||||
add_input("Size", SHADER_SOCKET_FLOAT, 0.25f);
|
||||
add_input("Turbulence", SHADER_SOCKET_FLOAT, 5.0f);
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_COORDINATE);
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_GENERATED);
|
||||
|
||||
add_output("Fac", SHADER_SOCKET_FLOAT);
|
||||
}
|
||||
@ -684,7 +684,7 @@ MagicTextureNode::MagicTextureNode()
|
||||
depth = 2;
|
||||
|
||||
add_input("Turbulence", SHADER_SOCKET_FLOAT, 5.0f);
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_COORDINATE);
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_GENERATED);
|
||||
add_output("Color", SHADER_SOCKET_COLOR);
|
||||
}
|
||||
|
||||
@ -734,7 +734,7 @@ StucciTextureNode::StucciTextureNode()
|
||||
|
||||
add_input("Size", SHADER_SOCKET_FLOAT, 1.0f);
|
||||
add_input("Turbulence", SHADER_SOCKET_FLOAT, 1.0f);
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_COORDINATE);
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_GENERATED);
|
||||
|
||||
add_output("Fac", SHADER_SOCKET_FLOAT);
|
||||
}
|
||||
@ -780,7 +780,7 @@ DistortedNoiseTextureNode::DistortedNoiseTextureNode()
|
||||
|
||||
add_input("Size", SHADER_SOCKET_FLOAT, 0.25f);
|
||||
add_input("Distortion", SHADER_SOCKET_FLOAT, 1.0f);
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_COORDINATE);
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_GENERATED);
|
||||
|
||||
add_output("Fac", SHADER_SOCKET_FLOAT);
|
||||
}
|
||||
@ -840,7 +840,7 @@ WoodTextureNode::WoodTextureNode()
|
||||
|
||||
add_input("Size", SHADER_SOCKET_FLOAT, 0.25f);
|
||||
add_input("Turbulence", SHADER_SOCKET_FLOAT, 5.0f);
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_COORDINATE);
|
||||
add_input("Vector", SHADER_SOCKET_POINT, ShaderInput::TEXTURE_GENERATED);
|
||||
|
||||
add_output("Fac", SHADER_SOCKET_FLOAT);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user