I created a patch that has now been merged with Blender master, it includes some changes to the resolution divider Cycles uses in the viewport. Cycles: adjust resolution divider to achieve a more usable viewport · 0963ee559e - blender - Blender Projects
I would love to hear your feedback on it. Is it better, is it worse, do you notice the changes?
Note: I use the terms “slow computer” and “fast computer” here. But whether or not a computer is considered fast or slow is dependent on the scene it’s rendering.
What was changed with this patch:
The Cycles viewport navigations frame rate on “slow" computers with high resolution monitors is improved by decreasing the viewport resolution while navigating. I’m looking for feedback on this. Is the increase in frame rate at the cost of resolution worth it for you?
Example of increased frame rate at reduced resolution
Without the change is on the left, with the change is on the right:
Cycles viewport navigations frame rate on “slow" computers with low resolution monitors is now lower but the navigation viewport resolution is higher (other combinations can also trigger this. E.G. A large pixel size with a “slow” computer, or a small viewport window on a slow computer). I’m also looking for feedback on this. Is the increase in resolution at the cost of frame rate worth it for you?
People with “fast” computers should see no change in navigation performance.
My change also impacts the transition from navigation to a 1:1 viewport render. This should be faster for everyone (with the exception of one specific case, which is already fast).
I am also looking for feedback on this, but it’s less important. (Although the transition is faster, there are fewer transitions which could be considered a bad thing by some people)
Example of changes to viewport navigation resolution transition
Images
Video
Without the change is on the left, with the change is on the right:
More detailed explanation of the changes (It may be harder to understand what's going on by reading this)
All the changes only effect the viewport rendering while you are navigating around the scene or modifying. Along with the transition from the navigation to a full resolution viewport.
- The maximum resolution divider is now one that targets 128 pixels on the long axis of the viewport. This leads to a few differences:
- If you have a scene that renders slowly on your hardware, and have a high resolution screen (1080p or higher) and a large viewport, the viewport resolution while navigating MAY now be lower, but the viewport will run at a higher frame rate in that specific situation when compared to before the change. See Footnote 1.
- If you have a scene that renders slowly on your hardware, and have a low resolution screen, or small viewport, the viewport resolution while navigating may now be higher, but the viewport now runs at a lower frame rate compared to before the change.
- If the scene renders at an alright speed on your hardware, you probably won’t notice a difference in this area.
- The number of transitions between resolution dividers has been reduced in most situations.
- In the old system with a slow rendering scene, it was
Stop navigating -> Cycles renders a slightly higher resolution viewport -> Cycles renders a slightly higher resolution viewport -> Full resolution viewport
- In the new system it’s one of these two depending on the specific conditions:
Stop navigating -> Full resolution viewport
Stop navigating -> Cycles renders a slightly higher resolution viewport -> Full resolution viewport
See Footnote 2.
- In the old system with a slow rendering scene, it was
Footnote 1
Here is an example of the viewport resolution now being lower, but more responsive.
Without the change is on the left, with the change is on the right:
Footnote 2
Here is an example of one of the new viewport navigation transitions.
Without the change is on the left, with the change is on the right:
For anyone providing feedback, can you also provide this information:
- What resolution is your screen?
- How big is the viewport on your screen? (If you don’t know how to describe it, a screenshot should work)
- What is your Pixel Size?
Location of pixel size setting
It’s located in the Render Properties
tab of the properties editor.
And if you are having a negative experience, screenshots/videos and a description of the issue would be helpful.