Changeset View
Changeset View
Standalone View
Standalone View
source/blender/modifiers/intern/MOD_nodes.cc
| Show First 20 Lines • Show All 992 Lines • ▼ Show 20 Lines | |||||
| for (const GeometryComponentType component_type : {GEO_COMPONENT_TYPE_MESH, | for (const GeometryComponentType component_type : {GEO_COMPONENT_TYPE_MESH, | ||||
| GEO_COMPONENT_TYPE_POINT_CLOUD, | GEO_COMPONENT_TYPE_POINT_CLOUD, | ||||
| GEO_COMPONENT_TYPE_CURVE, | GEO_COMPONENT_TYPE_CURVE, | ||||
| GEO_COMPONENT_TYPE_INSTANCES}) { | GEO_COMPONENT_TYPE_INSTANCES}) { | ||||
| if (!geometry.has(component_type)) { | if (!geometry.has(component_type)) { | ||||
| continue; | continue; | ||||
| } | } | ||||
| const GeometryComponent &component = *geometry.get_component_for_read(component_type); | const GeometryComponent &component = *geometry.get_component_for_read(component_type); | ||||
| if (component.is_empty()) { | |||||
| continue; | |||||
| } | |||||
| const blender::bke::AttributeAccessor attributes = *component.attributes(); | const blender::bke::AttributeAccessor attributes = *component.attributes(); | ||||
| for (const auto item : outputs_by_domain.items()) { | for (const auto item : outputs_by_domain.items()) { | ||||
| const eAttrDomain domain = item.key; | const eAttrDomain domain = item.key; | ||||
| const Span<OutputAttributeInfo> outputs_info = item.value; | const Span<OutputAttributeInfo> outputs_info = item.value; | ||||
| if (!attributes.domain_supported(domain)) { | if (!attributes.domain_supported(domain)) { | ||||
| continue; | continue; | ||||
| } | } | ||||
| const int domain_size = attributes.domain_size(domain); | const int domain_size = attributes.domain_size(domain); | ||||
| ▲ Show 20 Lines • Show All 888 Lines • Show Last 20 Lines | |||||