Only update affected render tile in viewport and final output (Useful in cycles material update preview).
Hello guys I would like to propose a feature that would allow the user to only update render tiles that are affected by a specific update like lighting or material parameter changes.
Again I am not entirely familiar with the scripting complexity of implementing this but this would probably be very helpful in making rendering more faster and make viewport preview more powerful hence no need to refresh the entire resolution size, the program will just update the affected tiles.
▬ User updates an objects material parameter
▬ Cycles will only update tiles that are affected by the parameter changes.
Thanks.

6 Comments
I think not possible, what if I had a glossy material.. all should be updated as it reflects light, same for emitting light, or smoke scene impact is beyond the object.
However i understand your pain, had it once myself in a 5 min video render one object had a wrong material. If the impact isnt that big on the scene there exists an addon that lets you perform aprtial renders, which you then later can merge with your allready rendered output.
see here blendermarket.com/products/animated-render-border/
* @peter.boos * I see. I totally forgot that is how the engine works.
* @peter.boos * Treat meshes that use the changed material as some kind of mask and only update tiles that those meshes are within. This would mean adding a functionality similar to having multiple render region boxes.
Sadly its not quite possible since every changes you make, even a small one, will influence other pixels in your image due to GI, reflections, transmission, etc.. So it needs to refresh every pixels.
That being said, Cycles devs can always impove cache interaction and BVH refit update in order to increase speed for displaying the first pixel and target only the things that have changed (which is already somewhat the case but I think it can be better!)
* @Shimoon * At least I learned something though. Thanks.
Why not use CTRL+B to define render border.