Hi guys, lately i have been exploring the new Rhino 6 , and I am positively surprised with the quality offered, however i notice we can´t yet display grasshopper curves or points ot mesh edges with the new arctic, render or raytraced mode. It would be very nice to have this options available. Any feedback on this I appreciate.
these are considered to be “rendered” modes, and when you render an image (either using Rhino Render, Cycles or some third party engine) you typically can’t use points and curves. We wanted to keep things consistent between all rendered modes which is why points and curves are no longer included.
But we can certainly discuss this sort of functionality for the future. @andy what are your thoughts on supporting curves and points (and by extension mesh edges and pointclouds etc.) as renderable geometry?
Unfortunately no. I’m now pumping render meshes to the Rhino custom render mesh pipeline so they will appear in all rendered modes and render windows. Grasshopper no longer draws anything in these viewports, it’s all handled by Rhino internally. And the Custom Render Mesh pipeline only handles surface primitives (meshes, spheres, etc.) not zero or one-dimensional geometry.
It’s also far from clear how zero and one-dimensional geometry ought to manifest in a rendered setting. How thick do they appear? Is that measured in world coordinates or screen coordinates? How thick does a curve look when it is reflected from some surface with a mirror material? What sort of materials are assigned to curves and points? How do texture coordinates map onto these shapes? And it goes on.
How are you drawing lines in wireframe mode? I don’t know of any “natural look” to abstract entities. Why assume that they must be rendered with “materials”?
Shadows? I had not expected shadows to be drawn. I expected something like Wireframe “augmented” with Rendered, at least for a start. Like drawing transparent diagrams (HumanUI), it doesn’t have “materials” nor shadows.
Or are we talking about different things altogether?
I draw everything in non-render modes (wireframe, shaded, xray, ghosted), I no longer draw anything in render modes (Rendered, Raytraced, Arctic). If I start drawing some stuff in rendered modes then they’ll show up in Rendered and Arctic, but not in Raytraced and Rhino Render and VRay and Maxwell, and and and. This lack of consistency is why we changed the behaviour in the first place. So ideally any solution needs to remain consistent.
Because almost every render-engine out there assumes that is the case. Many of them can’t even deal with quads, we have to convert all meshes to triangles only. Curve piping is one way to use curves in render engines, but it’s relatively expensive and only supports world-units. If a render engine is based in any way on raycasting, then a lot of extra work needs to be done before it will be able to ‘see’ curves and points, because any random ray will almost certainly miss a one-dimensional object.
We may be. We should wait for @andy to chime in, since he knows far more about Rhino as a render platform than me.
One “workaround” for what I am thinking of - except for realtime user interaction - would be to repeat GH animations with transparent background & wireframe and place them as overlay in some video editing software.
Would it be possible to produce viewport image dumps with wireframe and transparent BG?
Maybe it would be nice in a future release or upgrade inside Rhino display general settings a simple checkbox with classic grasshopper settings :" don´t draw any preview geometry, draw wire frame preview geometry, draw shaded preview geometry"; for a intuitive management.
This is something we discussed, either a separate checkbox in display properties for Grasshopper previews or some more generic mechanism. It is still something we can do, we just wanted to start with the simplest no-options approach and see what annoys people the most.
This has been a big issue for us. We desperately want to be able to see points and lines in rendered viewports as we had a lot of scripts for visualizations that were built to work in that way.
What is odd is what triggers the grasshopper display turning off is not shadows being shown or edges being off, but if “Color and Material Usage” in the display settings is set to “Use Rendering Material”.
If I create a “Shaded” view style but then want to see my material maps it turns off the grasshopper preview, even if there are no shadows and rhino is showing all of the curves and edges on the document geometry. If change the setting to “Use Layer Color” then I can use all of the Rendered views and Arctic views that I want. Curves will even show up in raytraced mode! (raytraced mode isn’t a big concern though)
The example below shows a box turning on and off, which I realize could be solved with the preview component, but this applies to points and lines as well which the preview component can’t solve.
I modified the behaviour about a week ago in the 6.x code branch (which you should be able to get probably already this week, otherwise next week if you’re on the Service Release candidate update schedule). The preview is back to normal again in all viewport types, the only difference now is that the Custom Preview component either draws directly or pushes meshes+materials depending on viewport mode material usage.
This means you still won’t be able to see coloured curves and points that come from a Custom Preview component in render-like viewports.
Here’s Arctic in the current build-of-the-day we use internally: