2
$\begingroup$

I've started using the branched path tracing and like the results, however I'm unable to figure out what the proper settings should be that result in a compromise between a faster render and good results.

Is there any way to track, on a given render, how long each type of sample is taking? (diffuse, glossy, transmission, AO, etc...) If I knew this information I could dial settings down until I find what seems to be a good compromise.

I feel like I'm using higher samples than necessary but every scene is different and will have different "optimal" settings and thus some way (other than trial and error) seems warranted.

Thanks!

$\endgroup$
3
  • $\begingroup$ Welcome to Blender.SE. There are render passes that can give you an idea of the amount of sampling for ecah type of BSDF. Did you already tried them? This doesn't fully address your question, but maybe could be a starting point. $\endgroup$
    – Carlo
    Aug 12, 2017 at 16:41
  • $\begingroup$ Thanks for the reply. I hadn't thought of that and I just built a separate render layer for each type (disabling the combined layer), which allows me to watch how fast or slow they are in real-time, but Blender only reports the total render time in the upper left. I was hoping to get time for each layer so that I can see what's taking up the most time. $\endgroup$
    – Jason
    Aug 12, 2017 at 17:59
  • $\begingroup$ My ultimate goal would be to have a script that records current render settings, then sets everything to 0 and loops through each type of sample (setting it to 1) and then rendering the frame at a low resolution percentage and recording the time. Then it could simply output that info to the console and you'd be able to see what's taking up the most time and manually edit those settings. $\endgroup$
    – Jason
    Aug 12, 2017 at 18:01

1 Answer 1

1
$\begingroup$

So I figured out how to make it myself and folks can find the script here:

Code on pastebin

If you have a very simple scene then you might get some wonky results, as this calculates based on render duration and every single time you render a frame (even the same frame), you'll get different times. The best use for this is on a semi-complex scene so that the various samples (diffuse, transmission, etc.) really get to take effect and modify the total render time.

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .