← All ideas
  • Published 10 Mar 2022

Edge Slide Node

UPDATE: After playing around with the actual Edge Slide tool as opposed to Loop Cut & Slide, I discovered that my proposal only covers one part of the Edge Slide.

We have loop cuts for mesh primitives already, which you can display by turning on Wireframe in the Viewport Overlays, and increasing of the input sliders for your mesh primitive:

Vertices for the Cone and Cylinder mesh primitive nodes. These loop cuts go vertically up and down, similar to Vertices Y lining up perfectly on the Cube mesh primitive node These loop cuts can already be seen by default because they are set at 32.

Fill Segments for the Cone and Cylinder mesh primitive nodes. These loop cuts go on the top and bottom of the mesh.

Side Segments for the Cone and Cylinder mesh primitive nodes. These loop cuts go horizontally left to right, similar to Vertices Z, aka the loop cuts on a Cube mesh primitive node.

Vertices X, Vertices Y, and Vertices Z for the Cube mesh primitive node are the loop cuts for front to back on the X axis, left to right on the Y axis, and up and down on the Z axis.

Vertices X and Y for the Grid mesh primitive node.

Segments on the UV Sphere mesh are similar to the X axis loop cuts, while Rings line up perfectly with Vertices Z. By default, you can already see the loop cuts, because Segments is set to 32, while Rings is at 16.

Even though we have loop cuts, we have no way of using the Edge Slide tool in Geometry Nodes.... sort of.

Sliding edges is essential for modeling various things in Blender. From keys, strawberries, and macarons to some cups and glasses.

Although there is a sort of work around, it uses too many nodes, and there's still problems with it.

Full credit to Youtuber Blender Bash's procedural sofa node tree for teaching me how to do a somewhat competent edge slide workaround that you see in the images below.

…Problem 1: You have to duplicate this setup for the other two axis, and obviously switch the inputs around both times.

Problem 2: This edge slide workaround only really works for the cube node with EXACTLY 4 vertices for X, Y, and Z. I'm sure by playing around with the math nodes, you can get it to work for other amounts of loop cuts, or the other mesh nodes, but that is still way too much work.

It's basically a bad time all around if your procedural model requires the Edge Slide Tool, which brings me to my proposal for a proper Edge Slide node.

The Edge Slide node would allow you to select and slide edges along your mesh, similar to using the Edge Slide Tool in Edit Mode. Although the Edge Slide tool in Edit Mode is more commonly used being merged with loop cuts, they are separate in Geometry Nodes.

Category: Mesh

Inputs:

Mesh is the standard mesh input. This is where you plug your Group Inputs, your primitives, your Set Positions, Delete Geometry, Extrude Mesh, etc.

Selection input (pink diamond) is your standard Boolean field where you can plug in your Index + Compare setup.

The Selection input corresponds with the number of loop cuts from the mesh primitive, meaning if you increase Vertices X on the Cube node to 3 for example, that would count as the first loop cut (1). 4 would be the second loop cut (2), 5 would be the third loop cut (3), 6 would be loop cut 4 (4), etc.

0 would be mean there are no loop cuts, meaning the vertices for the Cube, and Grid primitive nodes are set to 2, Vertices, Fill Segments, and Side Segments for the Cone and Cylinder are set to 3 and 1 respectively, 3 segments and 2 rings for the UV Sphere mesh primitive.

Slide (Float) is the float field used to slide the edge or edges.

Properties:

Selection Mode:

Edge selects a single edge based on the selection input.

Edge Loop selects all the edges around the mesh based on the selection input.

Direction:

Top

Only selects the edges on the positive Z axis. (The top of the mesh.)

Bottom

Only selects the edges on the negative z axis (Bottom of the mesh.)

Front

Only selects the edges on the positive X axis. (The front of the mesh.)

Back

Only selects the edges on the negative X axis. (The back of the mesh.)

Right

Only selects the edges on the positive Y axis. (Edges on the right side of the mesh.)

Left

Only selects the edges on the negative Y axis. (Edges on the left side of the mesh.)

Outputs:

Mesh is your standard output.

Geometry Nodes is improving with every major release.

The Edge Slide node being included will only increase the amount of procedural models that can be created.

I'd of course love to hear your thoughts on my idea for an Edge Slide node.

100%

Development Status: Open

Upvote 6 Downvote 0
davideugenerozierjr
10 Mar 2022

0 Comments