Current state of SubD, mesh utility and Grassshoper questions/thoughts

Hi All,

I’m now using V7 WIP as my daily tool. Most to start using a bit of SubD and do some edits right in Rhino without having to go back to Modo to make changes, re-import, etc.

I know it’s early days, but this is painful so far. Some might be user error, some lack of functionality. I’m not sure what’s on your to-do list and what might be an omission so I’ll mention the most disrupting ones just in case it helps:

  1. SubD bodies being a separate object than lowpoly bodies they came from it’s a mess. I want to be able to edit but selecting polys/points/loops and see my changes in both SubD (limit surface) and low-poly mode. And I want that to be interactive WHILE I’m using a tool. Like this:
    https://www.dropbox.com/s/fru2i8n7xhk7cmh/live_tools_GF_190213.mp4?dl=0
    So while I still have a widget/gumbal running I need to see in both SubD and faceted mode by tab-swapping without losing my tool or losing my cool. I’m not sur eif tshi fuctionality exists by default in Modo, but it’s a minimum requirement IMO to use these tools/typologies to to design work.

  2. We need a way to convert from one subobjects to another on the fly, like:
    edge loops > points, selected polys > edge boundary, etc. I might to select a loop as fast way to grab a selection of points and then subtract a few before I make a vertex-level transform.

  3. Give me symmetry or give me death. I know @brian, you said Symmetry is out of scope for V7. I have news for you guts then: probably having anything useful in SubD for V7 is also out of scope. We need something. If you cannot build a live symmetry engine, at least please give us some utilities to do symmetry check and symmetry fix. Maybe @pascal can cook some symmetrisize.py?

  4. We need selection grows based on a manual direction, and then selection expansion/reduction. Like this:
    https://www.dropbox.com/s/iaevygafg9vt1kk/selection_growth_and_expansion.mp4?dl=0

  5. We want selection sets save/retrieve. Is this even possible?

  6. Draft analysis ASAP. Even for small manual tweaks of objects modeled elsewhere we need to make sure our subD parts are within draft limits for molding. Can we please prioritize this in the naturalization process of SubD objects into Rhino?

  7. SubD tools and mesh edit tools as Grasshopper batteries. Pleeeease, the sooner we have some of those there, the sooner we can start doing really cool, drivable and interactive stuff in GH. Wo’s going to make those batteries? cc. @DavidRutten

Stuff looking and behaving good so far, keep up the great work. This will be amazing soon. I can feel it.

Thanks,

G

3 Likes

Gustavo, I do not know what is inside Rhino 7 but, as a Tsplines ex-user, I would like to see some useful tools for the modeling and editing of SubD, such as: Primitives; a vertex, edges and faces selector; extrude edges, faces and curves; subdvide face; insert edge ad point; add and remove crease (this seems to me the minimum necessary).
At least these, to begin with. Then it would take a Match surface, a Bridge, Thicken, Simmetry, etc. etc. (I know that these tools are not currently available).

Yes Davide, every TSplines user wants McNeel to replicate TSplines. Such users make a very small market, but a lot of what was there it was useful, so your points make sense. Especially if you combine it with a speedy SubD engine and something that doesn’t crash constantly.

I’m also now advocating for some quick fixes and subD modeler parity, buy I’m hoping we can move past this ‘nerds slapping & extruding cubes into products’ phase, and we can start seeing interesting work coming out of McNeel, and having tools that allows us to have much better design control.

The editing of SubD geometry is very important, just as it is important to provide selection tools (apart from the gumball and the keyboard). Adding or removing points, edges, faces, crease, making extrusions of curves, edges and faces is the basis for freely modeling any shape!
Then you can think of adding more complex tools, such as match surface, symmetry, bridge, thicken, etc.

1 Like

It’s true. It’s early. Barely anything works, and I’m glad for the feedback that you’ve provided. My guess is that this thread will devolve quickly given all the thoughts in the top post. In order to keep some level of sanity, I’d like to split each of your numbered items into their own topics, and respond there.

Whatever happens Brian, don’t let them grow us apart. They will call you names. They will say I’m wrong and I don’t know anything. They will do horrible things. Don’t let them get into your head. Let alone eat your soul. Stay strong :facepunch:t4::raised_hands:t4:

I would also like to see the Sub D thing getting more attention, I could really use this right now, it would really be a big leap forward IMHO.

Andreas

I do not know the state of development of SubD in WIP; I also understand that development is just beginning and it takes time to do things right.
If it may be interesting, I think these commands would be in Rhino, so that the SubD can be used in an optimal way:

SELECTION and EDITING:

  • First of all we need a vertex, edges and faces selector (the keyboard is not enough).
  • “Toggle smooth”: switch from soft to an flat modeling, and on the contrary (box and smooth mode).
  • “Extrude”: extrusion of curves, edges and faces.
  • “Crease”: add and remove creases.
  • “Insert”: insert control points and edges.
  • “Subdivide Faces”
  • “Merge edges”
  • “Unweld edges”
  • “Weld points”
  • “Standardize geometry”

MODELING TOOLS:

  • “Primitives”: parallelepiped, plane, cylinder, cone, sphere and toroid.
  • “Thicken”: with DirectionType: Normal and VertexNormal option.
  • “Bridge”: with normal and twist option.
  • “Symmetry”: axial and radial option.
  • “Match”
  • “Tubing”
  • “Loft”
  • “Networks”: useful for creating “skins”, for example, to generate Y shapes.
  • “Revolve”
  • “Sweep”

Ah, forget it: you need a tab “SubD tools” with lots nice icons style Rhinoceros! (going to look for all the commands in the command line is frustrating!).

Good job to all the developers for an ever better Rhino! :wink:

1 Like

Been holding off on this for a long time but finally bit the bullet and got rhino 6/7 wip to test sub-d out to figure out if I can ween myself off of t-splines.

A few hours in and everything Gustavo mentioned on this thread is right on the money. Symmetry, select single faces edges (not just loops and rings) along with selection sets with grow and contract, and smooth/box mode toggle in some form need to be in here in order to not be forced to go back and forth between rhino and a dedicated sub-d modeler.

I’m currently going through the Sub-D section of the forum trying to make sure i didn’t miss any commands and will make sure check daily for any updates as it progresses.

Everything I’m seeing looks really good though, everything seems to be working, Just not enough tools yet.

  1. Clayoo does all of this. I’m hoping that the reason the WIP doesn’t yet is that it’s a W.I.P., and I agree that it’s a basic functionality of SubD. We should also be able to call _Mesh and _ToNurbs in faceted view mode and get WYSIWYG results: faces become mesh faces or nurbs surfaces bounded by linear edges.

  2. Another Clayoo feature. When Rhino adds this it should work with hot keys. (we need to be able to use more of the keyboard than the Fkeys and home/end/pg up/pg dn as one-push hot keys!)

  3. I don’t understand why this is so hard. If it can be a grasshopper definition with relatively few components, why can’t it be a command?

  4. Video won’t play in my browser. :frowning:

  5. I thought this was already working in the WIP. I used it with a SubD’s control points this weekend.

  6. I want this too. But also, see below for a list of everything that’s already “naturalized”, I spent time this weekend trying to find things that were and weren’t and had some pretty fun results.

  7. Want this too. But also, there’s a whole lot of fun to be had already by just putting the “to SubD” component at the end of various grasshopper definitions. Try this (it’s not fancy or all that amazing but it works. requires mesh+ and skeleton fattener): WIP Fatten Test.gh (25.4 KB)


As for me, things I really want in SubD:

Easy: I’d like insert Ngon to have an option to auto delete the inner face and create a hole. Imagine a grasshopper component that does this, fed in to a grasshopper component that thickens/offsets an open subD to create a solid. Powerful fun.

Easy: I would like ExtractSrf with a copy option to work on subD object faces. Either that or CopytoClipboard. Currently _Copy works, but I think it’d be even more intuitive if all the copy cut and paste tools in rhino worked on SubD subobjects, particularly faces and groups of faces.

Probably also easy: I’d like subD edges to respond better to Osnaps. Example: If I extract a section curve from a SubD object, the intersections of that curve and the SubD edges should respond to Int snap. There are a lot of other snap issues, maybe a comprehensive separate post is worth my effort?

Harder: I’d like to be able to select vertices in both flat and smooth modes and be able to pull them to the closest point on a plane, a curve, a line, or a surface. For curves and surfaces, I’d like the option to pull them in a direction that’s normal to the surface, or perpendicular to the curve. Use case: select an edge loop, _dupedge, _offset, now you have a guide curve…move it do a different location on a SubD object, select a new edge loop, pull those vertices to the guide curve. Basically, precision control of vertex placement is important to getting precise output with good surface curvature.


OK, now here are some things I played with in SubD this weekend that did work, and that are potentially very useful.

Curves From Objects Menu:
These all work: (in smooth mode only, need them in flat mode too.)
DupEdge
DupFaceBorder
DupBorder (result is always has one unjoined segment, but otherwise works)
ExtractWireframe
Curve Blend Perpendicular to Edges
Intersect
IntersectTwoSets
Contour
Section
Silhouette
ExtractPoints
MeshOutline
…All of which are potentially very useful for creating guides for precision subD work and also for many other applications.

Don’t work (some probably can’t ever work because they are existentially incompatible):
Pull curve,
Project Curve,
Make 2d,
Extract Isocurve,
Create/Apply UV,
Geodesic Curve


Transform tools:
I played with Bend, Twist, Taper, Flow Along Curve, Maelstrom and Smooth, and they all work great! In fact, they arguably work better in SubD than with Nurbs, just because of the more forgiving nature of SubD. For example, a very aggressive Twist can yeild unusable results. But less so with SubD, and SubD also made it easy to take the edge off an aggressive deformation: just _Subdivide and then _Smooth. Very controllable!


Going forward:
An important part of what went through my mind as I was doing all this testing this weekend was this: In testing this, I should be trying to draw stuff I intend to build, but also just playing around, systematically trying to find what’s broken and what works. I found a whole lot more usable techniques by just playing than by being goal oriented. And I hope the feedback is useful. Also, any feedback from McNeil on my testing and how I’m reporting back would be welcome and helpful. I just want to help make SubD fully usable as fast as possible.

1 Like

I think Discourse is doing something new/weird that Dropbox videos, and they don’t play anymore. If you right-click on the link and open it in a new tab/window it will play.

G