Geometry Nodes

UV-TEST

Considering I went through the hassle of supporting disconnect of Bezier curves, a general solution to aligning the end-points was just to pre-convert poly-curves to auto-handle-1-rez-Beziers :man_facepalming: (Obvious in retrospect. Added it as a Boolean option now and it works with regular curve-to-mesh):

This will simplify my custom curve-to-mesh internals… they just need to check if end-points have the same position to treat them as “cyclic” (WIP).

Some cleanup and I can publish the Disconnect-Cyclic node group as a dirty patch for all having UV-transfer issues in 3.0.

Quiet here...

everyone too busy arguing about z-up vs y-up somewhere else? :no_mouth:

Edit:
Just procrastinating on what I can do with the disconnect node-group (Got a just-welded mobius effect going on this text):


…will get to the cleanup.

8 Likes

I’m really curious of your method. How do you bypass seam on smooth surfaces with disconnected circle profile?


My present hackish solution is to make two UVs with seam in different places and mix them in Shader Editor.

In Blender 3.0 there is no easy answer without involving modifiers… i.e. You need to have a hidden duplicate of your geometry, which has a Vertex Weld Modifier applied to it - then you use the Data Transfer Modifier on the visible geometry pointing to the hidden geometry (Face Corner Data selected with option “Custom Normals” selected).

Edit: Added example setup to the Node-Group file:

1 Like

Yeah, I’ve thought about Data Transfer too.
But you’ve got me curious once more on this topic.
Data transfer transfers normals. Transfer attribute transfers stuff. Can it transfer normal? Yes it can.



It does look a little bit off, but I can live with that :slight_smile:
Note: I have no idea why Normalize is needed in Sdader Editor. Just tried different things and this one kind of worked.

trying_curve_to_mesh_with_UVs103.blend (955.6 KB) (works with 3.0)

BTW thank you for sharing nodes!

Edit: Tried this with your Disconnect Cyclic Curves node-group. It is indeed awesome.
With star profile normals are facing the wrong way so I’ve multiplied Normal with -1.



1 Like


this is geonodes + wireframe modifier
wire_mesh.blend (868.0 KB)

4 Likes

Hi @higgsas
I tried to replicate your result, but can’t get it working.

Can you upload blend file to check it, might be that material using Data instead of Object setting in material properties

Thanks, sure.

005_raycast_medial_axis_transform.blend (1.8 MB)

The problem was that there was no material linked, either add Set Material node or change setting in the Material Properties to “Object”

3 Likes

Node group to calculate mesh Volume / Area

gn_mesh_volume_area _3_0.blend (1.1 MB)

10 Likes

Will NURBS for poor people be called POORBS?

Thanks @dimitarsp for inspiration.

6 Likes

I’m looking for some help. I’ll preface this with I’m totally winging this. Anyways I wish to set the endpoint of a bezier curve to some points in a grid. What I have now is I have a grid and I’ve done some filtering to just get the points I want along the edges. I want to take that selection and be able to select just one point and feed it into the vector inputs for bezier segment. In the screenshot I’m showing the bezier and the point instances together. So my issue is, how do I select one point from a selection.

I tried to use transfer attribute node but couldn’t get it to work. I also tried converting to a mesh and seeing if I could select a vertex from there but didn’t make progress. This is my first post here so i can’t upload the blend file. Any help would be appreciated. Thanks!

Try again in index mode.

Like so (Works in Blender 3.0):


… here the transferred position gets indexed by frame time (Driver #frame/60 * 12). It will cause the end-point of the line to step to every point on the circle in a 60 frame time span.
image

(Source doesn’t need to be points - can transfer straight from the curve like this also - just did that to match up to your description)

Wow thank you! That was it.

I’m trying to make loft/lathe setup.
So far I’m instancing profile curve around single vertex and changing their angle. After this there is grid node that creates the geometry between set number of curve instances.

Any ideas how to set number of curves procedurally?

Profile curve:

Proof of concept with 2 curves:

The number of instances must equal the number of grid X vertices:

This is close to the end result:

3 Likes



https://storage.googleapis.com/durkfiles/2022/02/idkwhatthisis.mp4

12 Likes

This is awesome! What does the source geometry look like?

Its just a cube lol

4 Likes

Here is updated technique to alight rotation to face edges (face tangent), alignment works almost the same way like parent face instancing from Object properties

face tan.blend (1.2 MB)

3 Likes

Hi, you may already found a solution … but if not here is one
Uploading: edge_delete_by_vg.jpg…
Not sure why it is not uploading here, but here is an alternative link:
https://moshs.de/img/nodevember/edge_delete_by_vg.jpg

Be sure that the input type of the VG is set to int or float.

1 Like