Optmization for viewport refresh (Cycles) and render - Part 1-4

Developers must check the GUI around how working for Optmization for viewport refresh (Cycles). There is many issues that refreshing viewport in cases is not needed, eg. disable selection in outliner. If hardware is strong, then maybe not visible the re-rendering after click the checkbox, but in my carer I see often this type. I’m suggesting to put some by users info in comments what user meet as viewport refresh if not needed to resolve problems and optimize rendering process.

I can add, that many time on laptop fun wind is not need coz GPU is not charged, but in case GUI requesting rerendering, then fun must start working and turning on whole energy management, etc. It’s brooking comfort of work and going to equipment wear.

PROBLEM

  1. @ henrikmikaelkristensen listed points where we meeting problem and can be done as “fastracking”
    Right-Click Select — Blender Community
Adding a new, unconnected shader node to a material
Changing any value in unconnected shader nodes
Resetting, duplicating or pasting unconnected shader nodes
Changing shader nodes that are not connected to any material outputs
Renaming any shader nodes
Changing shader node color
Grouping unconnected shader nodes
Changing a node value to the same one (go to a node value that is zero and change it to zero, and it updates anyway)
Switching preview geometry in the material preview area
Changing any value in the Viewport Display area of the material settings
Changing Object Properties -> Visibility -> Selectable
Changing Object Properties -> Visibility -> Show In -> Renders
Adding a new blank shape key
Removing a zeroed out shape key that should not have effect on geometry
Adding a new empty vertex group
Changing render time visibility for an object in the outliner
Selecting materials for an object in the outliner (but not in the material slot list itself, that works ok)
Changing Scene -> Dimensions -> Resolutions (these are only used during render time)
Changing Scene -> Dimensions -> Aspect (only the aspect overlay should change, byt Cycles also restarts)
Adding empty Geometry Nodes modifier
Removing empty Geometry Nodes modifier
Adding, duplicating, deleting and pasting unconnected geometry nodes
Renaming any geometry node
Changing color of any geometry node
Opening and then closing the Render Window

Shadin > Editor Type > > Texture > Browse image to be linked (if changed this same file or just tried do this, re-rendering)

  1. The second stupid case is that render process not Optimize render for animations (repeated keyframes) as this same images and frames are this same (for avi, etc).
    Optimize render for animations (repeated keyframes)

For example movie where are 60 key frames and 1-30 is different (doors are opened in car as example) and next from 30-60 keys is time lag to give some view (as opened and closed) as this same key frames, made situation that this sames key frames are rendered image by image in case that each can be copied from base 30keyframe. But render for each consuming time… as wasted in my opinion.

  1. And no option for pause render doing problems sometimes, so wee need this.
    Render - Pause
  1. Save Compiled Eevee Shaders to Disk
    Right-Click Select — Blender Community

SOLUTION

  1. Exclude the re-render on cases like upper if options are changed but not changing the viewport.
  2. Some solution exist in loom addon https://github.com/p2or/blender-loom
  3. The function cycles.preview_pause exist, just must be implemented and moved from viewport to join in class of render image and animation. - maybe need some “snapshot”. It be good to prevent “Stop render” as accidental case, to confirm stop by dialog “Yes/No” to stop (this same when closing render window)
  4. It’s related with point 3. as “snapshot” to file from render

SUGGESTIONS
If something will be done, report this on RCS to not turn back to this problems :smiley:

To attention:

1 Like