|
Blender V4.3
|
#include <shader_nodes.h>
Inherits ShaderNode.
Public Member Functions | |
| ~OSLNode () | |
| ShaderNode * | clone (ShaderGraph *graph) const |
| char * | input_default_value () |
| void | add_input (ustring name, SocketType::Type type, const int flags=0) |
| void | add_output (ustring name, SocketType::Type type) |
| bool | has_surface_emission () |
| bool | has_spatial_varying () |
| bool | has_volume_support () |
| virtual int | get_feature () |
| virtual bool | equals (const ShaderNode &) |
Public Member Functions inherited from ShaderNode | |
| ShaderNode (const NodeType *type) | |
| virtual | ~ShaderNode () |
| void | create_inputs_outputs (const NodeType *type) |
| void | remove_input (ShaderInput *input) |
| ShaderInput * | input (const char *name) |
| ShaderOutput * | output (const char *name) |
| ShaderInput * | input (ustring name) |
| ShaderOutput * | output (ustring name) |
| virtual void | attributes (Shader *shader, AttributeRequestSet *attributes) |
| virtual void | compile (SVMCompiler &compiler)=0 |
| virtual void | compile (OSLCompiler &compiler)=0 |
| virtual void | expand (ShaderGraph *) |
| virtual void | constant_fold (const ConstantFolder &) |
| virtual void | simplify_settings (Scene *) |
| virtual bool | has_surface_transparent () |
| virtual bool | has_surface_bssrdf () |
| virtual bool | has_bump () |
| virtual bool | has_bssrdf_bump () |
| virtual bool | has_attribute_dependency () |
| virtual ClosureType | get_closure_type () |
Public Member Functions inherited from Node | |
| Node (const NodeType *type, ustring name=ustring()) | |
| virtual | ~Node ()=0 |
| void | set (const SocketType &input, bool value) |
| void | set (const SocketType &input, int value) |
| void | set (const SocketType &input, uint value) |
| void | set (const SocketType &input, uint64_t value) |
| void | set (const SocketType &input, float value) |
| void | set (const SocketType &input, float2 value) |
| void | set (const SocketType &input, float3 value) |
| void | set (const SocketType &input, const char *value) |
| void | set (const SocketType &input, ustring value) |
| void | set (const SocketType &input, const Transform &value) |
| void | set (const SocketType &input, Node *value) |
| template<class ValueType , std::enable_if_t< std::is_enum_v< ValueType >, bool > = true> | |
| void | set (const SocketType &input, const ValueType &value) |
| void | set (const SocketType &input, array< bool > &value) |
| void | set (const SocketType &input, array< int > &value) |
| void | set (const SocketType &input, array< float > &value) |
| void | set (const SocketType &input, array< float2 > &value) |
| void | set (const SocketType &input, array< float3 > &value) |
| void | set (const SocketType &input, array< ustring > &value) |
| void | set (const SocketType &input, array< Transform > &value) |
| void | set (const SocketType &input, array< Node * > &value) |
| bool | get_bool (const SocketType &input) const |
| int | get_int (const SocketType &input) const |
| uint | get_uint (const SocketType &input) const |
| uint64_t | get_uint64 (const SocketType &input) const |
| float | get_float (const SocketType &input) const |
| float2 | get_float2 (const SocketType &input) const |
| float3 | get_float3 (const SocketType &input) const |
| ustring | get_string (const SocketType &input) const |
| Transform | get_transform (const SocketType &input) const |
| Node * | get_node (const SocketType &input) const |
| const array< bool > & | get_bool_array (const SocketType &input) const |
| const array< int > & | get_int_array (const SocketType &input) const |
| const array< float > & | get_float_array (const SocketType &input) const |
| const array< float2 > & | get_float2_array (const SocketType &input) const |
| const array< float3 > & | get_float3_array (const SocketType &input) const |
| const array< ustring > & | get_string_array (const SocketType &input) const |
| const array< Transform > & | get_transform_array (const SocketType &input) const |
| const array< Node * > & | get_node_array (const SocketType &input) const |
| bool | has_default_value (const SocketType &input) const |
| void | set_default_value (const SocketType &input) |
| bool | equals_value (const Node &other, const SocketType &input) const |
| void | copy_value (const SocketType &input, const Node &other, const SocketType &other_input) |
| void | set_value (const SocketType &input, const Node &other, const SocketType &other_input) |
| bool | equals (const Node &other) const |
| void | hash (MD5Hash &md5) |
| size_t | get_total_size_in_bytes () const |
| bool | is_a (const NodeType *type) |
| bool | socket_is_modified (const SocketType &input) const |
| bool | is_modified () const |
| void | tag_modified () |
| void | clear_modified () |
| void | print_modified_sockets () const |
| const NodeOwner * | get_owner () const |
| void | set_owner (const NodeOwner *owner_) |
| int | reference_count () const |
| void | reference () |
| void | dereference () |
| void | clear_reference_count () |
Static Public Member Functions | |
| static OSLNode * | create (ShaderGraph *graph, size_t num_inputs, const OSLNode *from=NULL) |
| 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 | |
| vector< ShaderInput * > | inputs |
| vector< ShaderOutput * > | outputs |
| int | id |
| ShaderBump | bump |
| ShaderNodeSpecialType | special_type |
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 1552 of file shader_nodes.h.
| OSLNode::~OSLNode | ( | ) |
Definition at line 7391 of file shader_nodes.cpp.
References Node::type.
| void OSLNode::add_input | ( | ustring | name, |
| SocketType::Type | type, | ||
| const int | flags = 0 ) |
Definition at line 7435 of file shader_nodes.cpp.
References input_default_value(), SocketType::LINKABLE, NULL, and Node::type.
| void OSLNode::add_output | ( | ustring | name, |
| SocketType::Type | type ) |
Definition at line 7443 of file shader_nodes.cpp.
References Node::type.
|
virtual |
|
static |
Definition at line 7401 of file shader_nodes.cpp.
References align_up(), SocketType::max_size(), node, Node::set_owner(), and Node::type.
Referenced by clone().
|
inlinevirtual |
Reimplemented from ShaderNode.
Definition at line 1596 of file shader_nodes.h.
|
inlinevirtual |
Reimplemented from ShaderNode.
Definition at line 1591 of file shader_nodes.h.
References ShaderNode::get_feature(), and KERNEL_FEATURE_NODE_RAYTRACE.
|
inlinevirtual |
Reimplemented from ShaderNode.
Definition at line 1583 of file shader_nodes.h.
|
inlinevirtual |
Reimplemented from ShaderNode.
Definition at line 1577 of file shader_nodes.h.
|
inlinevirtual |
Reimplemented from ShaderNode.
Definition at line 1587 of file shader_nodes.h.
| char * OSLNode::input_default_value | ( | ) |
Definition at line 7427 of file shader_nodes.cpp.
References align_up(), and SocketType::max_size().
Referenced by add_input().
|
inlinestatic |
Definition at line 1564 of file shader_nodes.h.
|
inlinestatic |
Definition at line 1557 of file shader_nodes.h.
References ptr.
| string OSLNode::bytecode_hash |
Definition at line 1602 of file shader_nodes.h.
Referenced by ShaderGraph::compute_displacement_hash().
| string OSLNode::filepath |
Definition at line 1601 of file shader_nodes.h.
| bool OSLNode::has_emission |
Definition at line 1603 of file shader_nodes.h.