So, I'm going to throw my $0.02 in here based on my experience. Note that I'll be the first to say that "your mileage may vary" - the effectiveness of some techniques is highly dependent on you particular rig, so what makes no difference for me might make one for you.
I've found these tips helpful..
1. Turn on cpu in the render settings.
If you have a decent GPU, adding the CPU is not going to make a lot of difference in the total render time. If you have only a so-so GPU, it may. This assumes you're using iRay, of course. If you're using 3Delight, then CPU is your only option.
2. Set daz3d priority to high in task manager/details if in Windows 10.
If you're using CPU rendering, this will make a minor difference, as other programs that are trying to run won't be able to steal as many cycles from you. With GPU rendering, this will make little or no difference.
3. Render with less samples. 1080p files should be minimum 200 I've found, but the darker the scene the higher it should be. I set mine to 8000 and leave it to run all night.
This doesn't affect the
rate at which DS renders, it only affects the stopping condition when DS will say "OK, I'm done." Basically, DS will stop under one of three conditions:
- The maximum number of samples that you allow is reached
- The maximum render time that you allow is reached
- The convergence percentage that you set up is reached
Lowering any of those values will make DS stop earlier, but you'll typically have more noise. (The new 4.11 beta has an intelligent de-noiser that may come in handy, however.
4.when doing a scene you may only want each image to change the mouth, simulating talking, or just move a single part or object Etc.. render a full image over night, then you only have to render smaller and less res sections of the image, then just merge the part render into position over the main with any image editor, mspaint, gimp, Photoshop and such. I do this to allow each line in my scene to have a unique image instead of 1 static image or 50 full renders.. better game, less rendering.
Quite correct. Rendering full scenes with characters in them will take longer than, say, rendering the background by itself and then rendering the individual characters and putting them in either in postwork or via your game engine (e.g. Ren'py "show"). The tradeoff is that shadows and such may not be "correct," but that may not be an issue depending on what your scene looks like and what your purpose is.
Note that if you set a render up with no background (i.e. "Draw Dome" off), DS figures out very quickly the pixels in the image where nothing is there, so it doesn't waste much time on them. Thus, the improvement in render speed by taking out the background is roughly proportional to the amount of transparent background space.
5. Dark scenes take longer, more seperate lights take longer. Shadows take longer. Gen 8 take longer then gen3. Incompatible textures that are morphed by Daz to fit take longer.
Pretty much correct. It's less about "dark", however, than it is about "indirect lighting." One way to make a scene dark but still render reasonably quickly is to light the scene "normally," but then change the exposure value in the Tone Mapping settings. Basically like using ASA 100 film inside as opposed to ASA 400.
Essentially, any area that doesn't get direct lighting is harder for iRay to converge, since it has to calculate a lot more "light bounces" before it's certain that it has the correct value.
Other things that slow stuff down:
- Reflective items. Mirrors, chrome, etc. Increases the number of bounces iRay has to calculate.
- Translucent items. These introduce scattering, which again increases the number of samples iRay needs.
- Mesh lights. iRay treats spotlights specially, since it "understands" them. But if you have a mesh object that emits light, iRay doesn't automatically "understand" that, and kind of figures out there's a light source there by accident when bouncing rays around. (It's not quite that bad, but...) Scenes with mesh lights will take longer to converge than an equivalent scene lit by spotlights.
6. Having iray selected in the model viewer before you begin rendering makes the render process begin much faster.
7. The above in the aux view should be set to iray too.
This will cut down on the amount of time that iRay spends setting up the scene, since all the assets will have already been installed into the GPU (or processed by the CPU). Thus, you'll get from "start rendering" to "first iteration" sooner. Once things get going, however, this will actually slow iRay down, because it will be trying to render the scene twice at the same time - once to your final render and once to the view window. Using the "aux window trick" is good if you want to flip your main viewport between iRay and Textured Shaded, since it cuts down on the amount of time to do that. But if your render takes any significant amount of time, you're better off
not having either window in iRay mode.
8. Produce a higher res image, then resizing it after the render will remove lots of grain and noise. This is due to how image software compresses the image using various algorithms that can deal with image cleanup quite intelligently.. drop your samples by 20-40% then move it to you image resizer software.
This is one technique that is widely recommended, but is hard to evaluate. To do this effectively, you have to render at 2x or 3x the size that you want to eventually have. (See #10). So you're trading off rendering a lot more pixels for somewhat fewer iterations versus rendering a smaller number of pixels for more iterations. My own experience is that this is highly image-dependent - some images work well this way, particularly if they have isolated "fireflies." Others end up with larger areas that have not converged, which may or may not "smooth out" when you downsample. That being said, some postprocessing tools have noise removal capability that can be used to help this out a well.
9. Do multiple renders, save them, then merge them using the Daz render feature. It's an option under render in the menu bar.
Not sure how this is going to help. In general, iRay operates pretty deterministically, so if an area isn't converged in your first render, the same area is likely not to have converged in your second. But since I haven't tried this, I can't say much about it.
10. Render at smaller sizes.
Smaller is always faster. Fewer pixels to evaluate.
11. Render at the correct aspect ratio for your target audience. 16:9 is the most popular.
I'm not sure how this is a "how to render faster" recommendation. Unless you mean "don't render parts of the image that you're then going to cut off later by cropping the image." If so, then that falls under the general "don't render stuff you don't want in your final output."
12. Turn off your internet browser. It uses Java and can reduce available resources for the render.
This really has nothing to do with Java - it's true of pretty much any program. Any running program is going to consume RAM and CPU. In addition, non-minimized programs will consume some GPU memory as well. Usually, this isn't huge, but if you're on the hairy edge of fitting your scene into your GPU, this can make a difference. In addition, if another program is drawing anything to its own window, that consumes GPU cycles. So, yes, fewer competing programs will allow DS to render faster.
13. Use less objects in a scene. If they aren't in the render then having them in the scene still slows things down. Iray will have to calculate all the ambient occlusions for lighting the scene correctly.. including each object.
True. The effect varies. But having additional items that you can't see both consumes GPU memory and GPU load time, as well as potentially requiring additional bounces to determine the correct lighting. Of course, sometimes you need that off-screen item in order for shadows to look correct.
14.use a renderfarm/ outsource your render, use another pic for multiple renders. Open multiple instances of Daz and run renders simultaneously (good for an overnight or gone for the day situation)
This isn't really about speeding up how fast a particular piece of hardware does your render, but more about applying additional horsepower to the problem. However, I will disagree with you slightly about running multiple instances of Daz. If you're doing GPU rendering, you're still going to be limited by the speed of your GPU - you're now just dividing it among two different images. In addition, with some assets, DS creates temporary files, and having two instances of DS running at the same time can cause collisions between the temp files and crashes as a result.
If you have multiple images to render and want to be in "walk away" mode, you're better off using a batch render plugin, which allows you to set up a series of files that should be rendered in sequence and then turn DS loose on the list. I use this one all the time:
You must be registered to see the links
A few other items you might consider:
- Under normal circumstances, when iRay casts rays out into the scene, it keeps bouncing until it decides that the ray isn't going to contribute a significant amount of energy to the pixel. (Essentially, some "energy" is lost with most bounces.) You can limit the number of bounces that iRay will try in the render settings. For scenes that have a large number of reflective items, but where those items don't occupy a lot of the scene, this can make a difference. Dialing down too far will mean that reflective surfaces may not look correct. Ditto eyes if they occupy a significant portion of your render, since they have a lot of internal reflection.
- For objects that aren't close to your camera, remove bump maps and displacement maps. This makes the surfaces look smoother to DS, which means that things converge faster because the bounces off the item are less scattered. This also results in less GPU memory being occupied.
- For objects that are off-camera, but there for shadow purposes, remove all the textures. Basically, just have them be big grey blobs. They'll still block the sun, but will consume a lot less memory. Unless, of course, you need that "green light filtering through the leaves" effect.
Note - the above is based on my own experience. Different people's hardware are different, and some of the techniques I disagreed with might work when the rig is different from my own. (I have a pretty beefy machine, and am always doing GPU rendering, not CPU rendering. So if you're a CPU renderer, some of my comments above might be incorrect. Try it - see what happens.)