diff options
author | Hans Goudey <h.goudey@me.com> | 2022-03-14 19:48:11 +0300 |
---|---|---|
committer | Hans Goudey <h.goudey@me.com> | 2022-03-14 19:48:11 +0300 |
commit | d4e46c13cc92e01489a031a6afe6bafb5af5ca18 (patch) | |
tree | 5c6294d006044d4100500f9e92bce8fea36c8841 /source/blender/blenkernel | |
parent | a5578351c38e2b2bb45d940a2fc57354e5fe3a5e (diff) |
Geometry Nodes: Add named attribute nodes behind experimental flag
This commit adds three nodes:
- `Remove Attribute`: Removes an attribute with the given name
- `Named Attribute`: A field input node
- `Store Named Attribute`: Puts results of a field in a named attribute
They are added behind a new experimental feature flag, because further
development of attribute search and name dependency visualization will
happen as separate steps.
Ref T91742
Differential Revision: https://developer.blender.org/D12685
Diffstat (limited to 'source/blender/blenkernel')
-rw-r--r-- | source/blender/blenkernel/BKE_node.h | 5 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/node.cc | 5 |
2 files changed, 8 insertions, 2 deletions
diff --git a/source/blender/blenkernel/BKE_node.h b/source/blender/blenkernel/BKE_node.h index 4e664192019..904f06f2734 100644 --- a/source/blender/blenkernel/BKE_node.h +++ b/source/blender/blenkernel/BKE_node.h @@ -1392,7 +1392,7 @@ struct TexResult; #define GEO_NODE_LEGACY_ATTRIBUTE_COMBINE_XYZ 1027 #define GEO_NODE_LEGACY_ATTRIBUTE_SEPARATE_XYZ 1028 #define GEO_NODE_SUBDIVIDE_MESH 1029 -#define GEO_NODE_ATTRIBUTE_REMOVE 1030 +#define GEO_NODE_LEGACY_ATTRIBUTE_REMOVE 1030 #define GEO_NODE_LEGACY_ATTRIBUTE_CONVERT 1031 #define GEO_NODE_MESH_PRIMITIVE_CUBE 1032 #define GEO_NODE_MESH_PRIMITIVE_CIRCLE 1033 @@ -1517,6 +1517,9 @@ struct TexResult; #define GEO_NODE_MERGE_BY_DISTANCE 1153 #define GEO_NODE_DUPLICATE_ELEMENTS 1154 #define GEO_NODE_INPUT_MESH_FACE_IS_PLANAR 1155 +#define GEO_NODE_STORE_NAMED_ATTRIBUTE 1156 +#define GEO_NODE_INPUT_NAMED_ATTRIBUTE 1157 +#define GEO_NODE_REMOVE_ATTRIBUTE 1158 /** \} */ diff --git a/source/blender/blenkernel/intern/node.cc b/source/blender/blenkernel/intern/node.cc index 51a2545d7b9..9a573919165 100644 --- a/source/blender/blenkernel/intern/node.cc +++ b/source/blender/blenkernel/intern/node.cc @@ -4694,6 +4694,7 @@ static void registerGeometryNodes() register_node_type_geo_legacy_attribute_proximity(); register_node_type_geo_legacy_attribute_randomize(); + register_node_type_geo_legacy_attribute_remove(); register_node_type_geo_legacy_attribute_transfer(); register_node_type_geo_legacy_curve_endpoints(); register_node_type_geo_legacy_curve_reverse(); @@ -4726,7 +4727,6 @@ static void registerGeometryNodes() register_node_type_geo_attribute_map_range(); register_node_type_geo_attribute_math(); register_node_type_geo_attribute_mix(); - register_node_type_geo_attribute_remove(); register_node_type_geo_attribute_separate_xyz(); register_node_type_geo_attribute_statistic(); register_node_type_geo_attribute_vector_math(); @@ -4768,6 +4768,7 @@ static void registerGeometryNodes() register_node_type_geo_flip_faces(); register_node_type_geo_geometry_to_instance(); register_node_type_geo_image_texture(); + register_node_type_geo_input_named_attribute(); register_node_type_geo_input_curve_handles(); register_node_type_geo_input_curve_tilt(); register_node_type_geo_input_id(); @@ -4821,6 +4822,7 @@ static void registerGeometryNodes() register_node_type_geo_proximity(); register_node_type_geo_raycast(); register_node_type_geo_realize_instances(); + register_node_type_geo_remove_attribute(); register_node_type_geo_rotate_instances(); register_node_type_geo_sample_texture(); register_node_type_geo_scale_elements(); @@ -4838,6 +4840,7 @@ static void registerGeometryNodes() register_node_type_geo_set_shade_smooth(); register_node_type_geo_set_spline_cyclic(); register_node_type_geo_set_spline_resolution(); + register_node_type_geo_store_named_attribute(); register_node_type_geo_string_join(); register_node_type_geo_string_to_curves(); register_node_type_geo_subdivision_surface(); |