[Cycles proposal] Divided render resolution option in viewport rendering.

I have some suggestions for viewport rendering in Cycles. As is known render speed depends on resolution. The bigger is your working area the greater resolution must be rendered. I think when when working on materials and lighting we rather don’t care about the quality of the render. Instead we need instant feedback. I’m right?

I’m Working in Cycles since 4 month. In this time I watched hundreds of tutorials and noticed two methods of how people deal with resolution vs speed thing. The first method is to set the tiny 3D view surrounded by bunch of other windows. Probably with second 3D view and and Node editor, even if they render simple diffuse + glossy mix. Something like that.
Second method is to set render region in the center of screen and zooming out whole scene to fit it in that area. See the picture.
Both methods come down to having a tiny image you’re staring at while sniffing your monitor.

I came up with an idea that could solve this problem. This is nothing new because many video editing and compositing programs have same thing.
As the thread title says, its about the dividing render resolution of viewport and upscale it to actual window size. Cycles will be doing exactly the same thing as rendering this tiny images so it will be fast but result can be seen on bigger area. Image will be pixelated of course but as I mention- we need fast results, not final quality.
Rendering image with dots made of 2x2 pixels will take 1/4 render time than full resolution. Dividing resolution to 1/9 (3x3 pixels dots) reduce time to 1/9 and etc. Of course, we must add BVH calculations ans stuff but you know what I mean.

Icons responsible for the dividing render should be close at hand so the best place is next to pause render button. By the way, if you have a small window (first image) then sliding the header to jump to the pause button is a little annoying. :wink:

I did a little mock-up how it might look like.

It is worth noting that this will be very useful when someone is working on a huge resolution. For example the Retina HDPI on the MacBookPro. Of course, large pixels don’t look as nice as a full render but imho this might be more practical than sniffing your display. :wink:

I understand your desire for the feature. Makes lots of sense. But I think your solution, as presented to the user, is overly technical.

Why not have a “quality” slider control where we can select a desired speed/quality tradeoff for the viewport rendering? By disconnecting resolution from the setting it means that other factors could be included in there without it having to be communicated to the user. So the “worst” setting could not only use a much-lower resolution, but could also turn something else off. And not only that, but you could also have settings that go above the current full resolution. So “default” or “normal” could be mid-way in the quality slider but you could select higher-quality settings that would turn on extra features, like more bounces, if that is what you wanted.

:smiley:Something like that”. The node tree is insane, borderline nightmarish. :eek: This is my way of working, altho never with such a tiny window! I just make sure to disable the renderability of anything that I’m not working on and I don’t mind waiting a few seconds or to work at a slower path if the GPU makes my computer crawl. And I switch back to Solid mode when I know I need to do some major changes.

The only real improvement that would benefit us is to prevent Blender from starting a new rendering when the changes you make don’t affect it. Like adding a node connected to nothing. Why does Blender restart rendering? Nothing has changed yet. That’s the thing that makes you feel the real time rendering as painful sometimes.

the fraction previews I think are not a good idea because it lowers the resolution and makes looking for details hard.
Harleys idea is good best would be to have a quality slider/option inside the 3D viewport but well you can set those also in render settings.

I actually very much like the boarder renderin 3D view because I can focus on what I need and not wast GPU/CPU power on areas I have no interest in.

As stated by the OP this is not related to rendering, only to the view when in cycles rendered mode. So I’d prefer something like this to only affect the 3D Viewport and not be some general setting. That way you could choose to have different settings for each of multiple 3D viewports. Even if it was just something on the 3D Editor Properties panel somewhere.

Heres what I use for cycles preview (i have a very slow Pc, so i literally have to wait for even a cube)
In camera view mode use shift B to render only what you need to see.
it works in preview render too and is pretty fast depending on the size

(already mentioned above, can be ignored) :slight_smile:

there is a simplify option somewhere that sets limits for subsurf etc.
maybe this could be expanded to an extra bunch of options for simplifying just the preview

I like both ideas - preview independent form resolution and quality slider, but Monio’s way seams easier to implement [and could make the job done] so my +1 for it. [imo the lack of detail isn’t a problem when you just test lighting or base materials]