OpenGL Rendering Tips Needed
I'm trying to use Daz3D to create cut scenes for a gaming narrative let's play series. I've worked my way through animating in IRay and 3Delight. IRay is gorgeous but takes about two hours per second to render animation. 3Delight is still nice, but I can't get good results at less than about one hour of render time per second. I'm now experimenting with Intermediate OpenGL rendering. I find the quality of the images acceptable since it's still quite a bit better than animation captured live in game. I can render in Intermediate OpenGL at about five minutes per second of footage. That's a render rate I can live with. My question is: can anyone offer any tips on how to set up shaders and lights for rendering in Intermediate OpenGL?
In my testing so far it seems that if I use anything other than the camera headlamp, or the scene preview lights, my subject is completely washed out by the lights. Should I just forget about lighting my scenes? I've had some success getting shadows into the scene by using a single spotlight, but the results are not consistent.
What about shaders? SSS settings? Sometimes I get good results and sometimes the eyes render completely black or white. Naked figures render quickly while clothed figures take three times as long. Any tips on why that might be?
Any help or suggestions at all would be much appreciated. I can't find anything on YouTube or the net that's helpful with this.
Thanks in advance if you take the time to reply!
Comments
well there are ways you can speed up iray and 3delight too to equal openGL times
iray reducing samples is one way
3Delight not using tranparency maps, SSS and displacement the fastest with out many lights use just a spotlight
Shaders are specific to the render engine, and do not appear in OpenGL at all. You may see some change in the Viewport when you apply a shader, it may become a dark grey or a lighter colour, but they cannot be displayed properly in OpenGL, so that is a no go.
Rats! I was afraid of that. I suspected that there just aren't correct lights or shaders in Daz for OpenGL. Seems that's too true. Bummer.
I spent a long time trying to squeeze IRay down to reasonable times. I found that I could get it down to about an hour per second of rendered video - but the quality was worse than 3Delight, which can render at full quality at that rate. I haven't tried paring down the quality in 3Delight as you suggest. Looks like that's my only option at this point. Thanks for the tip.
It depends a lot on your hardware too
so hard to really say what is best for you
I have a 980ti graphics card so iray can fly for me, 3Delight is generally painfully slow but even so can get very fast times with no transmaps, less textures and a single spot but limits the models you can use vastly
Can you put some numbers to, "really fly"? I'm doing my renders on a gaming laptop with an Nvidia 750M. I know it's no match for a 980ti, but am wondering what kind of render times you're seeing for well optimized IRay scenes? I've been debating building a rig with a 980ti but was concerned the difference wouldn't be worth it.
Minutes...most of those who have upper 900 series cards, with 4 or more GB of memory usually post render speeds in the minutes, often under 30, range.
There are a lot of things to do to speed up 3DL rendering, too...more than were listed earlier.
Well to render an image I leave the max samples as is and the max seconds
but for animation I lower both, seconds to 60 or less and samples to 100 at most
testing on one frame to see how short a time I need to clear up the fireflies.
in 3Delight altering shading rate and pixel samples can make a huge difference too
I am actually not the best to ask as I mostly render outside of DAZ studio in Carrara and iClone.
One big 3DL speed up...and you can keep raytraced effects with transparencies, with this technique and not suffer a huge speed hit. For an item like hair, use the UberSurface/UberSurface2 shader by omnifreaker and scroll down to find the Occlusion settings and switch it from Global to Override and set it to something above 10. This will reduce/remove occlusion calculations from the transmapped items, thereby really speeding up the rendering of them.` Also, unless you need lots of reflections, max raytrace depth shouldn't be set higher than about 2 (4 is enough for most things...)
Another speed up...enabling porgressive rendering in 3DL. It switches to the much faster raytrace hider (3DL speak for renderer) as opposed to the slower REYES one.
For animation a global shading rate of lower than 1 is a waste of time...depending on how many frames/sec and 'style' of the animation you can go as high as 4 and still have a good quality render. Also, the samples...unless you are doing depth of field or motion blur, you should leave them at the defaults.