Page MenuHome

Geometry Nodes: Mesh Primitive Torus
AbandonedPublic

Authored by Stephane Cuillerdier (aiekick) on Jul 2 2021, 5:31 PM.

Details

Reviewers
None
Summary

Hello,

i have added this node for generatre torus mesh with some features :

  • torus twisting
  • torus section angle set
  • torus section scale set (the scale follow the twist)

when "section scaling" is enabled : (we can vary section cale X / Z)

see this video :

https://twitter.com/aiekick/status/1410981016462888960

Diff Detail

Event Timeline

Stephane Cuillerdier (aiekick) requested review of this revision.Jul 2 2021, 5:31 PM
Stephane Cuillerdier (aiekick) created this revision.

Nice job getting this working, and sorry this didn't get a reply earlier, I actually didn't see it until now.

Actually though, I don't think this should be part of the default built-in primitives for a few reasons:

  • All of this is pretty easy to accomplish with the current curve nodes, with a two curve circle primitives and a curve to mesh node, this can be built quite quickly.
    • The twist is possible to control with the tilt attribute, etc.
  • Sometimes the argument for a separate primitive is that better performance will be possible, but I don't think that's the case here.
    • With the curve nodes and primitives it's possible to scale, change the shape, etc in any way-- it's more flexible.
  • So adding this implementation means something else to maintain that doesn't provide a large enough benefit, in my opinion.
  • When we get geometry nodes in the upcoming built-in Blender asset bundle, we can ship this as a "Torus" group that the user can look into and edit themselves.
  • Also, personally I haven't found torus to be the most useful primitive, and I see it used much less.

I hope what I said is reasonable. Thanks for the contribution, it's quite nice to see this sort of thing being done.

yep but with your method the porblems are :

  • you cant twist the section along the circle, didn see the tilt params
  • with the twist you can obtain a one ribbon uv map, and your method cant do the uv map it too.

ex :

the torus is a base primitive for many artist, and make sense to have a good one in nodes, since we have is in basic primitives.

so my node is usefull because cant be done easilty with just another nodes as far i know

i wrote a modification of a stratup script for doing the same here :
https://developer.blender.org/D11761
but its not programmable like nodes

but like all my proposal are seen very very far and finally canceled. its weird.
i have many idea, but if i spend time on it, and finally are canceled 1 or 2 month after, its very discouraging.

Actually the nodes in your screenshot would produce this:


Another node needs to be added:

Actually that's why I posted this in the devtalk thread:
https://devtalk.blender.org/t/geometry-nodes/16108/1827?u=eary
So I think the curve circle need to have a different default direction to make the nodes in your screenshot work.