Blender
V3.3
|
Public Member Functions | |
IndexTransferFunction (GeometrySet geometry, GField src_field, const eAttrDomain domain) | |
fn::MFSignature | create_signature () |
void | evaluate_field () |
void | call (IndexMask mask, fn::MFParams params, fn::MFContext UNUSED(context)) const override |
![]() | |
virtual | ~MultiFunction () |
void | call_auto (IndexMask mask, MFParams params, MFContext context) const |
virtual void | call (IndexMask mask, MFParams params, MFContext context) const =0 |
virtual uint64_t | hash () const |
virtual bool | equals (const MultiFunction &UNUSED(other)) const |
int | param_amount () const |
IndexRange | param_indices () const |
MFParamType | param_type (int param_index) const |
StringRefNull | param_name (int param_index) const |
StringRefNull | name () const |
virtual std::string | debug_name () const |
bool | depends_on_context () const |
const MFSignature & | signature () const |
ExecutionHints | execution_hints () const |
Additional Inherited Members | |
![]() | |
void | set_signature (const MFSignature *signature) |
virtual ExecutionHints | get_execution_hints () const |
The index-based transfer theoretically does not need realized data when there is only one instance geometry set in the source. A future optimization could be removing that limitation internally.
Definition at line 624 of file node_geo_transfer_attribute.cc.
|
inline |
Definition at line 636 of file node_geo_transfer_attribute.cc.
References GeometrySet::ensure_owns_direct_data().
|
inlineoverride |
Definition at line 669 of file node_geo_transfer_attribute.cc.
References blender::attribute_math::convert_to_static_type(), blender::nodes::node_geo_transfer_attribute_cc::copy_with_indices_clamped(), indices, mask(), params, T, type, and blender::GVArray::typed().
|
inline |
Definition at line 647 of file node_geo_transfer_attribute.cc.
References blender::fn::GFieldBase< NodePtr >::cpp_type(), and blender::fn::MFSignatureBuilder::single_input().
|
inline |
Definition at line 655 of file node_geo_transfer_attribute.cc.
References component(), blender::bke::domain_num(), and blender::nodes::node_geo_transfer_attribute_cc::find_source_component().