forked from blender/blender
MaterialX: add convert nodes #15
@ -8,15 +8,11 @@ namespace blender::nodes::materialx {
|
|||||||
|
|
||||||
NodeItem BlackbodyNodeParser::compute()
|
NodeItem BlackbodyNodeParser::compute()
|
||||||
{
|
{
|
||||||
/* This node doesn't have an implementation in MaterialX 1.38.6.
|
NodeItem temperature = get_input_value("Temperature", NodeItem::Type::Float);
|
||||||
* It's added in MaterialX 1.38.8. Uncomment this code after switching to 1.38.8.
|
|
||||||
*
|
|
||||||
* NodeItem temperature = get_input_value("Temperature", NodeItem::Type::Float);
|
|
||||||
|
|
||||||
BogdanNagirniak marked this conversation as resolved
Outdated
|
|||||||
* NodeItem res = create_node("blackbody", NodeItem::Type::Color3);
|
NodeItem res = create_node("blackbody", NodeItem::Type::Color3);
|
||||||
* res.set_input("temperature", temperature);
|
res.set_input("temperature", temperature);
|
||||||
* return res; */
|
return res;
|
||||||
return empty();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace blender::nodes::materialx
|
} // namespace blender::nodes::materialx
|
||||||
|
@ -21,7 +21,7 @@ NodeItem::Type NodeItem::type(const std::string &type_str)
|
|||||||
return Type::Filename;
|
return Type::Filename;
|
||||||
}
|
}
|
||||||
if (type_str == "boolean") {
|
if (type_str == "boolean") {
|
||||||
return Type::Bool;
|
return Type::Boolean;
|
||||||
}
|
}
|
||||||
if (type_str == "integer") {
|
if (type_str == "integer") {
|
||||||
return Type::Integer;
|
return Type::Integer;
|
||||||
@ -67,7 +67,7 @@ std::string NodeItem::type(Type type)
|
|||||||
return "string";
|
return "string";
|
||||||
case Type::Filename:
|
case Type::Filename:
|
||||||
return "filename";
|
return "filename";
|
||||||
case Type::Bool:
|
case Type::Boolean:
|
||||||
return "boolean";
|
return "boolean";
|
||||||
case Type::Integer:
|
case Type::Integer:
|
||||||
return "integer";
|
return "integer";
|
||||||
@ -638,7 +638,7 @@ void NodeItem::set_input(const std::string &in_name, const NodeItem &item)
|
|||||||
case Type::String:
|
case Type::String:
|
||||||
set_input(in_name, item.value->asA<std::string>(), item_type);
|
set_input(in_name, item.value->asA<std::string>(), item_type);
|
||||||
break;
|
break;
|
||||||
case Type::Bool:
|
case Type::Boolean:
|
||||||
set_input(in_name, item.value->asA<bool>(), item_type);
|
set_input(in_name, item.value->asA<bool>(), item_type);
|
||||||
break;
|
break;
|
||||||
case Type::Integer:
|
case Type::Integer:
|
||||||
|
@ -17,7 +17,7 @@ class NodeItem {
|
|||||||
/* Value types */
|
/* Value types */
|
||||||
String,
|
String,
|
||||||
Filename,
|
Filename,
|
||||||
Bool,
|
Boolean,
|
||||||
BogdanNagirniak marked this conversation as resolved
Outdated
Bogdan Nagirniak
commented
Maybe rename to Boolean, as we use full names for other types? Maybe rename to Boolean, as we use full names for other types?
|
|||||||
Integer,
|
Integer,
|
||||||
/* Block of arithmetic types. Ordered by type cast */
|
/* Block of arithmetic types. Ordered by type cast */
|
||||||
Float,
|
Float,
|
||||||
|
@ -8,9 +8,9 @@ namespace blender::nodes::materialx {
|
|||||||
|
|
||||||
NodeItem RGBToBWNodeParser::compute()
|
NodeItem RGBToBWNodeParser::compute()
|
||||||
{
|
{
|
||||||
NodeItem color = get_input_value("Color", NodeItem::Type::Color3);
|
NodeItem color = get_input_value("Color", NodeItem::Type::Color4);
|
||||||
BogdanNagirniak marked this conversation as resolved
Outdated
Bogdan Nagirniak
commented
use Color4 type use Color4 type
|
|||||||
|
|
||||||
NodeItem res = create_node("luminance", NodeItem::Type::Color3);
|
NodeItem res = create_node("luminance", NodeItem::Type::Color4);
|
||||||
res.set_input("in", color);
|
res.set_input("in", color);
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user
It is exists in pbrlib_def.mtlx, can be used here