It’s kind of counter-intuitive that viewport performance slows down when section or level clipping is active, because there are actually less objects visible. In bigger scenes, performance can quickly slow down to a crawl. Really takes the flow out of the work.
I’m aware that a lot of tricky stuff is going on under the hood, but still - do you think optimization is possible?
Could VA clipping be somehow combined with the Rhino ‘hide’ flag? Like if object’s bounding boxes lie completely ‘behind’ any clipping planes, the objects simply become temporarily hidden, so that the clipping algorithm has less workload?
Or some sort of smart caching? It feels like clipping is invoked everytime the viewport is refreshed, which results in this perfomance hit.
Section performance depends on the number of objects that intersect with the clipping planes, so section lines must be computed and drawn. Also, if there are section attributes, especially section hatch pattern, performance will be impacted.
Any object that is completely clipped is not drawn and intersection lines are computed and cached.
Moreover, VisualARQ sections are implemented using per-object Rhino display conduits. When a per-object display conduit is active, Rhino disables many optimizations, because Rhino doesn’t know what the conduit is going to do. For example, if you enable the “Print Preview” feature, that also uses a per-object display conduit, you’ll see also a lower display speed.
The good news is that we have made big improvements in display speed for VisualARQ 2.13. Those improvements will affect not only sections, but also the “Hidden” display mode and 2D drawing.
Good news, thanks!
Hope 2.13 will be out soon (also because you said you will update the level panel to work with SHIFT-select…)