Blender
V3.3
|
#include <shader_nodes.h>
Additional Inherited Members | |
![]() | |
vector< ShaderInput * > | inputs |
vector< ShaderOutput * > | outputs |
int | id |
ShaderBump | bump |
ShaderNodeSpecialType | special_type |
![]() | |
ustring | name |
const NodeType * | type |
InternalNode | internal |
LeafNode | leaf |
![]() | |
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 () |
![]() | |
template<typename T > | |
static T & | get_socket_value (const Node *node, const SocketType &socket) |
![]() | |
ClosureType | closure |
![]() | |
const NodeOwner * | owner |
int | ref_count {0} |
SocketModifiedFlags | socket_modified |
Definition at line 525 of file shader_nodes.h.
|
virtual |
Reimplemented from ShaderNode.
Definition at line 2843 of file shader_nodes.cpp.
References ATTR_STD_GENERATED, ShaderNode::attributes(), Shader::has_surface_link(), ShaderNode::input(), and ShaderInput::link.
void PrincipledBsdfNode::compile | ( | SVMCompiler & | compiler, |
ShaderInput * | metallic, | ||
ShaderInput * | subsurface, | ||
ShaderInput * | subsurface_radius, | ||
ShaderInput * | subsurface_ior, | ||
ShaderInput * | subsurface_anisotropy, | ||
ShaderInput * | specular, | ||
ShaderInput * | roughness, | ||
ShaderInput * | specular_tint, | ||
ShaderInput * | anisotropic, | ||
ShaderInput * | sheen, | ||
ShaderInput * | sheen_tint, | ||
ShaderInput * | clearcoat, | ||
ShaderInput * | clearcoat_roughness, | ||
ShaderInput * | ior, | ||
ShaderInput * | transmission, | ||
ShaderInput * | anisotropic_rotation, | ||
ShaderInput * | transmission_roughness | ||
) |
Definition at line 2855 of file shader_nodes.cpp.
References __float_as_int(), SVMCompiler::add_node(), BsdfBaseNode::closure, SVMCompiler::closure_mix_weight_offset(), SVMCompiler::encode_uchar4(), Node::get_float(), Node::get_float3(), ShaderNode::input(), ShaderInput::link, one_float3(), ShaderInput::socket_type, SVMCompiler::stack_assign(), SVMCompiler::stack_assign_if_linked(), SVM_STACK_INVALID, float3::x, float3::y, and float3::z.
|
virtual |
Reimplemented from ShaderNode.
Definition at line 2782 of file shader_nodes.cpp.
References blender::bke::attribute_accessor_functions::add(), ShaderInput::disconnect(), graph, ShaderNode::input(), ShaderInput::link, mix, ShaderNode::output(), ShaderNode::remove_input(), and zero_float3().
|
inlinevirtual |
Reimplemented from ShaderNode.
Definition at line 586 of file shader_nodes.h.
|
virtual |
Reimplemented from ShaderNode.
Definition at line 2984 of file shader_nodes.cpp.
References BsdfBaseNode::has_bump(), and has_surface_bssrdf().
|
virtual |
Reimplemented from ShaderNode.
Definition at line 2949 of file shader_nodes.cpp.
References ShaderNode::input(), ShaderInput::link, and usdtokens::roughness().
|
virtual |
Reimplemented from ShaderNode.
Definition at line 2837 of file shader_nodes.cpp.
References CLOSURE_WEIGHT_CUTOFF, ShaderNode::input(), ShaderInput::link, and NULL.
Referenced by has_bssrdf_bump().