Rhino WIP grasshopper display pipeline slow


#1

I would like to ask about Rhino 6 WIP preview in grasshopper.

I noticed that my previous components for mesh preview also some of human plugin components displaying geometry in a slow manner comparing with rhino 5.

Before I was overriding bounding box, and displaying mesh and wires through args.display…

Did the display procedure changed?
If yes is it possible to get an example how can I properly display geometry from component?


(Steve Baer) #3

I am working on some display optimizations this week for GH. Hopefully I’ll have this code in place for next week’s WIP
https://mcneel.myjetbrains.com/youtrack/issue/RH-40712


#4

Thanks, would it be possible to get an example file how to display meshes through grasshopper component one it is fixed?


(David Rutten) #5

Grasshopper doesn’t actually provide a separate mechanism for drawing geometry, all it does is call the DrawViewportWires() and DrawViewportMeshes() methods and give you a Rhino.Display.DisplayPipeline instance for you to draw with. So just call whatever method on the pipeline draws what you want to draw.

One obvious thing to keep in mind is that you want to do the absolute minimum amount of work inside the drawing methods. Don’t validate meshes, don’t compute boundingboxes, certainly don’t compute meshes from breps. Everything you want to draw should basically be cached.


#6

Thanks, so the procedure will stay the same.


(David Rutten) #7

Unless Steve decides to add some methods/classes that have better performance during his impending research, yes.