|
Blender V4.5
|
#include <shader_nodes.h>
Inherits ShaderNode.
Static Public Member Functions | |
| static OSLNode * | create (ShaderGraph *graph, const size_t num_inputs, const OSLNode *from=nullptr) |
| static void | operator delete (void *ptr) |
| static void | operator delete (void *, void *) |
Public Attributes | |
| string | filepath |
| string | bytecode_hash |
| bool | has_emission |
Public Attributes inherited from ShaderNode | |
| unique_ptr_vector< ShaderInput > | inputs |
| unique_ptr_vector< ShaderOutput > | outputs |
| int | id = -1 |
| ShaderBump | bump = SHADER_BUMP_NONE |
| float | bump_filter_width = 0.0f |
| ShaderNodeSpecialType | special_type = SHADER_SPECIAL_TYPE_NONE |
Public Attributes inherited from Node | |
| ustring | name |
| const NodeType * | type |
| InternalNode | internal |
| LeafNode | leaf |
Additional Inherited Members | |
Protected Member Functions inherited from Node | |
| template<typename T > | |
| void | set_if_different (const SocketType &input, T value) |
| void | set_if_different (const SocketType &input, Node *value) |
| template<typename T > | |
| void | set_if_different (const SocketType &input, array< T > &value) |
| void | set_if_different (const SocketType &input, array< Node * > &value) |
| void | dereference_all_used_nodes () |
Static Protected Member Functions inherited from Node | |
| template<typename T > | |
| static T & | get_socket_value (const Node *node, const SocketType &socket) |
Protected Attributes inherited from Node | |
| const NodeOwner * | owner |
| int | ref_count {0} |
| SocketModifiedFlags | socket_modified |
Definition at line 1567 of file shader_nodes.h.
|
override |
Definition at line 7591 of file shader_nodes.cpp.
References Node::type.
| void OSLNode::add_input | ( | ustring | name, |
| SocketType::Type | type, | ||
| const int | flags = 0 ) |
Definition at line 7650 of file shader_nodes.cpp.
References input_default_value(), SocketType::LINKABLE, Node::name, and Node::type.
| void OSLNode::add_output | ( | ustring | name, |
| SocketType::Type | type ) |
Definition at line 7658 of file shader_nodes.cpp.
References Node::name, and Node::type.
|
overridevirtual |
Reimplemented from ShaderNode.
Definition at line 7601 of file shader_nodes.cpp.
References ATTR_STD_GENERATED, attributes(), ShaderNode::attributes(), Shader::has_surface_link(), in, ShaderNode::inputs, SocketType::LINK_TANGENT, and SocketType::LINK_TEXTURE_GENERATED.
Referenced by attributes().
|
overridevirtual |
Implements ShaderNode.
Definition at line 7596 of file shader_nodes.cpp.
References create(), graph, ShaderNode::inputs, and unique_ptr_vector< T >::size().
|
static |
Definition at line 7621 of file shader_nodes.cpp.
References align_up(), from, graph, SocketType::max_size(), node, and Node::type.
Referenced by clone().
|
inlineoverridevirtual |
Reimplemented from ShaderNode.
Definition at line 1615 of file shader_nodes.h.
|
inlineoverridevirtual |
Reimplemented from ShaderNode.
Definition at line 1610 of file shader_nodes.h.
References ShaderNode::get_feature(), and KERNEL_FEATURE_NODE_RAYTRACE.
|
inlineoverridevirtual |
Reimplemented from ShaderNode.
Definition at line 1602 of file shader_nodes.h.
|
inlineoverridevirtual |
Reimplemented from ShaderNode.
Definition at line 1596 of file shader_nodes.h.
|
inlineoverridevirtual |
Reimplemented from ShaderNode.
Definition at line 1606 of file shader_nodes.h.
| char * OSLNode::input_default_value | ( | ) |
Definition at line 7642 of file shader_nodes.cpp.
References align_up(), NodeType::inputs, SocketType::max_size(), and Node::type.
Referenced by add_input().
|
inlinestatic |
Definition at line 1581 of file shader_nodes.h.
|
inlinestatic |
Definition at line 1574 of file shader_nodes.h.
References ptr.
| string OSLNode::bytecode_hash |
Definition at line 1621 of file shader_nodes.h.
Referenced by ShaderGraph::compute_displacement_hash().
| string OSLNode::filepath |
Definition at line 1620 of file shader_nodes.h.
| bool OSLNode::has_emission |
Definition at line 1622 of file shader_nodes.h.