Im posting to make sure I understand Layout viewport functionality more precisely.
Hoping this might help others as well.
Im a stacked viewport user. I know most certainly that viewports take computer resources to render the contents of the scene in the model that is assigned to it.
What I am unclear about still is the affect that hiding invisible objects thru tagging plays on the performance of the viewport. Seems like I have heard two stories:
Layout has to process all geometry in the model, even geometry that is turned off via its tag.
Layout only has to process what is visible in that scene; or better said, the user can assign the scene but also further control what the viewport “sees” by toggling tag visibility for any objects not needed in that individual viewport.
Example 1:
I have a model with 5 million entities.
I have nothing tagged.
I create a scene of that model.
I connect it to viewport 1
Layout lags out, if not crashes entirely.
Example 2:
Same model
Every thing is tagged.
Same scene is attached to the same viewport.
I turn off all tags but one which has just 20 entities.
Layout doesn’t even blink.
Obviously in example 1, Layout has to render all the entities even though only a few thousand might be all that is visible to my eye. But what about example 2? Same model, same entities, same scene, same viewport, but I reduce the visible entities down to 20 with my tags. Is this an actual performance boost in Layout? Are the other 4,999,980 entities invisible to that viewport?
The last time I modelled and had lag problems in layout was a couple of years ago with a property that was vertically clad a lot in plain tiles that had a slight camber and included the batten lug.
In viewport scenes that didn’t show the tiling I experienced severe lag.
I don’t normally model this way because I’ve always known about this issue.
I realised immediately the cause of the problem – either I needed to simplify the tile component or add a tag for the tiles.
If you took that model and hid all the tiles in your main viewport and created a stacked viewport for just the tiles, would there be a performance boost since the cpu doesn’t have to try to render the tiles with the rest of the model?
Does a cpu slow down because of the sheer volume of entities in a single viewport? Which is better said, “can the cpu process the same amount of entities separated by tags in separate Layout viewports?”
The top viewport has tiles and brickwork turned off and the lower viewport everything is turned off except tiles and brickwork – it’s about 4 seconds to update. If I have four each of these two viewports, it’s nearly 16 seconds to update.
Below there is just just the one viewport with tiles and bricks turned on – interestingly it’s about 2 seconds to update. If I have four of these viewports, it’s nearly 8 seconds.
Below is one viewport with a proxy for the tiles and bricks – it’s more or less instant.
If I have four of these viewports, it’s just over a second to update.
So the tiles or bricks would be grouped and tagged as, say, object_3D.
Then I would create a volume that mapped to the tiles or bricks and tag as object_2D.
Then in my scenes for Layout I would turn off object_3D and turn on object_2D.
The object_2D objects could have a pattern applied to the visible surface to represent the tiles or bricks.
It can be not ideal sometimes – I like my 1:100 / 1:50 plans to have a single contiguous section fill colour to represent walls. A volume representing a proxy for bricks would show in the section cut unless turned off and then I would need a volume to represent the overall wall construction… argh!
A workaround…and then some more workaround. I honestly didn’t see a perfect software yet, because more a sophisticated architectural software always need longer setting up time…So either you spend time to set up or workaround…