Geometry Nodes: Order selection inputs after geometry inputs

While there may be arguments for different positions of the selection
inputs, it's important to be consistent, and putting them right after
the corresponding geometry works well when there are multiple
geometry inputs. Addresses T91646.
This commit is contained in:
Hans Goudey 2021-10-14 15:36:24 -05:00
parent 89c7c115ce
commit 2055ef107a
Notes: blender-bot 2023-02-14 08:29:54 +01:00
Referenced by issue #92261, Render with Motion Blur and Overscan makes Blender crash
Referenced by issue #92240, Transform Node Applied to Input Geometry Affects Unrelated Branches
Referenced by issue #92069, Draw curve over surface does not work
Referenced by issue #91604, Geometry nodes: object disabled for render but used in geometry nodes not working
11 changed files with 12 additions and 12 deletions

View File

@ -43,6 +43,7 @@ namespace blender::nodes {
static void geo_node_point_distribute_points_on_faces_declare(NodeDeclarationBuilder &b)
{
b.add_input<decl::Geometry>("Geometry");
b.add_input<decl::Bool>("Selection").default_value(true).hide_value().supports_field();
b.add_input<decl::Float>("Distance Min").min(0.0f).subtype(PROP_DISTANCE);
b.add_input<decl::Float>("Density Max").default_value(10.0f).min(0.0f);
b.add_input<decl::Float>("Density").default_value(10.0f).supports_field();
@ -53,7 +54,6 @@ static void geo_node_point_distribute_points_on_faces_declare(NodeDeclarationBui
.subtype(PROP_FACTOR)
.supports_field();
b.add_input<decl::Int>("Seed");
b.add_input<decl::Bool>("Selection").default_value(true).hide_value().supports_field();
b.add_output<decl::Geometry>("Points");
b.add_output<decl::Vector>("Normal").field_source();
@ -70,7 +70,7 @@ static void geo_node_point_distribute_points_on_faces_layout(uiLayout *layout,
static void node_point_distribute_points_on_faces_update(bNodeTree *UNUSED(ntree), bNode *node)
{
bNodeSocket *sock_distance_min = (bNodeSocket *)BLI_findlink(&node->inputs, 1);
bNodeSocket *sock_distance_min = (bNodeSocket *)BLI_findlink(&node->inputs, 2);
bNodeSocket *sock_density_max = (bNodeSocket *)sock_distance_min->next;
bNodeSocket *sock_density = sock_density_max->next;
bNodeSocket *sock_density_factor = sock_density->next;

View File

@ -31,13 +31,13 @@ namespace blender::nodes {
static void geo_node_mesh_to_points_declare(NodeDeclarationBuilder &b)
{
b.add_input<decl::Geometry>("Mesh");
b.add_input<decl::Bool>("Selection").default_value(true).supports_field().hide_value();
b.add_input<decl::Vector>("Position").implicit_field();
b.add_input<decl::Float>("Radius")
.default_value(0.05f)
.min(0.0f)
.subtype(PROP_DISTANCE)
.supports_field();
b.add_input<decl::Bool>("Selection").default_value(true).supports_field().hide_value();
b.add_output<decl::Geometry>("Points");
}

View File

@ -26,8 +26,8 @@ namespace blender::nodes {
static void geo_node_set_curve_handles_declare(NodeDeclarationBuilder &b)
{
b.add_input<decl::Geometry>("Geometry");
b.add_input<decl::Vector>("Position").implicit_field();
b.add_input<decl::Bool>("Selection").default_value(true).hide_value().supports_field();
b.add_input<decl::Vector>("Position").implicit_field();
b.add_output<decl::Geometry>("Geometry");
}

View File

@ -21,9 +21,9 @@ namespace blender::nodes {
static void geo_node_set_curve_radius_declare(NodeDeclarationBuilder &b)
{
b.add_input<decl::Geometry>("Geometry");
b.add_input<decl::Bool>("Selection").default_value(true).hide_value().supports_field();
b.add_input<decl::Float>("Radius").min(0.0f).default_value(1.0f).supports_field().subtype(
PROP_DISTANCE);
b.add_input<decl::Bool>("Selection").default_value(true).hide_value().supports_field();
b.add_output<decl::Geometry>("Geometry");
}

View File

@ -21,8 +21,8 @@ namespace blender::nodes {
static void geo_node_set_curve_tilt_declare(NodeDeclarationBuilder &b)
{
b.add_input<decl::Geometry>("Geometry");
b.add_input<decl::Float>("Tilt").subtype(PROP_ANGLE).supports_field();
b.add_input<decl::Bool>("Selection").default_value(true).hide_value().supports_field();
b.add_input<decl::Float>("Tilt").subtype(PROP_ANGLE).supports_field();
b.add_output<decl::Geometry>("Geometry");
}

View File

@ -29,8 +29,8 @@ namespace blender::nodes {
static void geo_node_set_material_declare(NodeDeclarationBuilder &b)
{
b.add_input<decl::Geometry>("Geometry");
b.add_input<decl::Material>("Material").hide_label();
b.add_input<decl::Bool>("Selection").default_value(true).hide_value().supports_field();
b.add_input<decl::Material>("Material").hide_label();
b.add_output<decl::Geometry>("Geometry");
}

View File

@ -21,8 +21,8 @@ namespace blender::nodes {
static void geo_node_set_material_index_declare(NodeDeclarationBuilder &b)
{
b.add_input<decl::Geometry>("Geometry");
b.add_input<decl::Int>("Material Index").supports_field().min(0);
b.add_input<decl::Bool>("Selection").default_value(true).hide_value().supports_field();
b.add_input<decl::Int>("Material Index").supports_field().min(0);
b.add_output<decl::Geometry>("Geometry");
}

View File

@ -21,9 +21,9 @@ namespace blender::nodes {
static void geo_node_set_point_radius_declare(NodeDeclarationBuilder &b)
{
b.add_input<decl::Geometry>("Geometry");
b.add_input<decl::Bool>("Selection").default_value(true).hide_value().supports_field();
b.add_input<decl::Float>("Radius").default_value(0.05f).min(0.0f).supports_field().subtype(
PROP_DISTANCE);
b.add_input<decl::Bool>("Selection").default_value(true).hide_value().supports_field();
b.add_output<decl::Geometry>("Geometry");
}

View File

@ -21,8 +21,8 @@ namespace blender::nodes {
static void geo_node_set_shade_smooth_declare(NodeDeclarationBuilder &b)
{
b.add_input<decl::Geometry>("Geometry");
b.add_input<decl::Bool>("Shade Smooth").supports_field();
b.add_input<decl::Bool>("Selection").default_value(true).hide_value().supports_field();
b.add_input<decl::Bool>("Shade Smooth").supports_field();
b.add_output<decl::Geometry>("Geometry");
}

View File

@ -21,8 +21,8 @@ namespace blender::nodes {
static void geo_node_set_spline_cyclic_declare(NodeDeclarationBuilder &b)
{
b.add_input<decl::Geometry>("Geometry");
b.add_input<decl::Bool>("Cyclic").supports_field();
b.add_input<decl::Bool>("Selection").default_value(true).hide_value().supports_field();
b.add_input<decl::Bool>("Cyclic").supports_field();
b.add_output<decl::Geometry>("Geometry");
}

View File

@ -23,8 +23,8 @@ namespace blender::nodes {
static void geo_node_set_spline_resolution_declare(NodeDeclarationBuilder &b)
{
b.add_input<decl::Geometry>("Geometry");
b.add_input<decl::Int>("Resolution").default_value(12).supports_field();
b.add_input<decl::Bool>("Selection").default_value(true).hide_value().supports_field();
b.add_input<decl::Int>("Resolution").default_value(12).supports_field();
b.add_output<decl::Geometry>("Geometry");
}