Due to memory errors I have been rendering a lot of still images in Vray using render strips (with viewport configure: sub-region settings). While this works fine, it takes forever and you have to change the region and hit render every time a strip finishes. Does anyone know of a script or utility that will allow one to automate this process?
ive realised stiprendering works rather will and since its not cauculating the irradiance map for the entire image but only the stip then its more memory friendly
I do the same for finals, but about 25% of the time I get enough difference in IR calcs between the stripes that it is noticable. When that happens, I precalc IR on one machine, then stripe across the network.
Region rendering is not render strips. Look into the “split scanline” or “render stripes” in the help file for the feature in backburner. It will take your scene and break it up into strips automatically through the network rendering interface.
Currently I haven´t noticed differences between the IR map calculations on each stripe as far as your rendering settings are pretty high (as they should be if ur rendering finals anyway).
In past versions of Vray there were issues regarding pixel ratio or something like that so u ended facing strange and hard-to-solve divergences comparing a stripe to another. Now, render stripes works like a charm with vray and, besides, it stitches all the stripes automatically when the job is done.
However u can choose to keep the stripes unstitched, just in case u want to do it yourself. It´s useful when some of the stripes crash when rendering and u want, at least, to use a part of the image and only rerender what is missing, maybe with lower settings or some local optimizations…
Thanks for the help. I guess the question is, or what I need to test is whether through backburner, if I assign render strips, will each machine calculate the IR for its own strip? Because of memory issues I cannot calculate the IR as a whole, which is why I was “strip” region rendering to begin with.
For best results, you should still IR calc on one machine (*incrementally higher and higher res if you want to save time). Then send to backburner in strips. I like to send like 60 strips even if i have only 10-20 machines…or I try to do it so that 1 strip is the size of a bucket (at least).
Using this method, our IR calc takes only minutes..and 6000 pixel images take anywhere from 20mins to 2 hrs. Not a bad way to go!
*Let’s say your final is 6000 pixels across…so single frame at 375-incremental add-750-incremental add-1500-incremental add-3000.
…and make sure you check ‘don’t render final image’ after the first calc.
Yes, olitech please elaborate. Are you saying that you start doing the IR pass at a low resolution, and then recalc again at progressively higher resolutions with the “add incremental” option? So basically, you keep adding IR passes together to get a quality IR map without having to do it at the full resolution. Interesting idea…
So, just to recap:
If your target res is 6000 pixels, divide by half (3000), divide again (1500), divide again (750)…
So, do a single frame IR calc @750 (save map)
Next, increase res to 1500…click ‘don’t render final image’…incremental add (map saved)
Next, increase again to 3000, incremental add
Finally, increase to 6000…unclick ‘don’t render final image’…
Send to backburner in many, many strips…
Then go home to your significant other, kids…have dinner…see what’s on TV, fix the dripping faucet, put up the curtains, etc.
We’ve been doing it this way for almost 2 years now.
I just thought everyone did it this way…If not, then pleeease try it and have a life.
Ok…
I understand what you are doing - but why? I understand rendering stripes and precalcing IR. But what is the benefit of progressively calcing rather than doing a full calc up front?
(And yes, I got it, but sadly have been too busy to look at it. Sorry! And thanks! It’s on my list for today! I wanted to chat with you about something else as well. Is that same email a good one to write you?)
From my own experience I can tell render strips overcomes DR when it comes to stability. Dont even try DR in complex scenes if your host machine has not the 3Gb thingy, because if it crashes, everything does, although the other machines contributing to DR could go on rendering, but the main machine is not responding, so they stop. So, if it crashes, speed is zero
Render to strips (many!) is also more memory friendly, so u can find yourself sending 50+ strips to backburner in order to avoid memory crashes. I´ve found this is sometimes the only way to get the job done, combined with dynamic memory switch, of course
In addition to what panthon said, strips use BB which also allows you to stack a series of jobs. DR works (when it works) only for the current camera/frame.
That said, I would still love to use DR more for working renders/image previews. I have just found it far too unstable to use.