OOT hairs suddenly causing slow render times. New update issue?
OK, so bear with me here. Let me start by saying that I've been using DAZ for over ten years and using Iray since it came out, and I'm pretty confident I'm not doing anything dumb. Let me also say that I recently bought a new computer with a new 2070 graphics card which has frankly blown me away with the speed at which it renders and the size of the scenes it can handle: I'm now regularly constructing scenes of 5-7 characters plus scenery and render time is rarely in excess of an hour. Consequently, can I respectfully ask people not to chip in with the usual "are you doing *insert rookie mistake here*?" responses. I'm pretty sure I've ruled that out already.
So here's my issue. When Genesis 8.1 came out, I installed all the relevant updates as per normal, including (I think) the update to studio itself. At the same time, I started noticing hang-ups when using the in-engine render window and beginning renders. When working on single figures, these were noticable but not significant, but when rendering larger scenes of 3-4 figures plus scenery, the hang-ups were much more severe. Over the weekend, I did two renders which I'd have expected to be done in half an hour or so given previous performance. Both times, they locked my computer up completely for the first twenty minutes before rendering even started, and then took three hours to complete the render. At the time I put it down to the scene I was using, and assumed there'd been an abnormally large texure map or something similar.
Yesterday, I set up another scene, using a set and figures I'd used before, reasonably confident that there wouldn't be any issues. Again though, viewing the scene in the render window to check shadows locked me out of my computer for a good twenty minutes- something I experienced frequently on my old graphics card but not on my new one. It was a deliberately bright scene with minimal backdrop and I'd taken care to prune out any unnecessary objects, so I was reasonably sure all would work well. Once I finally regained control, I saved the scene, shut down DAZ, waited a while and then re-opened it, making sure I set the window to wireframe so the textures weren't loading before I set the render going. Again- same lock-out and same wait before rendering began. I left it running and came back three hours later to find that it was only at 50%. I stopped the render at that point, and as I was looking at the scene I realised that pretty much everything had rendered fine except for the three OOT hair models I was using, which had significant glitching and artefacts around them.
Tonight, on a whim, I re-loaded the scene and replaced the OOT models with Aprilysh ones. Currently as I type, the render is at 82% progress after 42 minutes, and my computer is handling normally with Mozilla firefox and a Word document running happily in the background- the performance I've come to expect on this machine.
Now I should point out that previously I've had no problems with OOT hair models and used them in many scenes without issue. This is something completely new that I haven't encountered before. Looking back at my other slow or aborted renders over the weekend, they were also using OOT hair models. So I'm as confident as I can be that something in the new update isn't agreeing with those models. I'm wondering if anyone else has had the same experience.
Comments
Nobody? Absolutely nobody is having this easily replicated issue with OOT hair models?
I don't get long render times (no longer than usual, I should say), but I do get really long load times. Sometimes up to 10 mins for the hair to load into the scene.
I have noticed that OOT hair takes at least 2-5 minutes to load when I add it to a scene. I don't know what might cause that, but you're not alone. OOT hair renders quickly for me, though.
I kind of stopped using OOT hair because I seem to have to constantly clean up artifacts on the character's forehead. I've tried resetting the figure to 0,0,0, adjusting head size, and using opacity to hide the hair cap. It really stinks too because I really love just about every hair I've gotten from that creator. However, just for giggles, I loaded a hair and yes, the load time is far longer than almost anything else. Not sure why though.
I have noticed the longer load times since DS 4.14 as well for all my OOT hair (I think there are several morphs that are being loaded in with the hair which is slowing down the load time, but haven't been able to isolate them). If I save the hair as a materials preset it tends to shorten subsequent loading times. Only render issues with DS 4.15 are a tendency for a "halo" to appear around the hair which has been mentioned in other threads; lowering the Cutout Opacity from 1.0 to 0.99 greatly improves this issue. Occasionally I do run into artifacts on the forehead due to hair cap intersecting with the figure, but usually adjusting the Head Size and Head L and Head R sliders fixes this issue. I often use other shaders for hair colors to expand the range of colors available to me over the default ones supplied by OOT, but neither appears to affect overall render times on my system (running GTX Titan X Pascal GPU).
I ran into the forehead issue a while ago and solved it by adjusting the hair's head size by between 10 and 15%, depending on character morphs. I've noticed the long loading time as an issue as well. But the render hang issue is the biggest one for me, and I'm in the middle of setting up a pair of test renders to showcase what I mean. Think I'll have to attach them both to a bug report.
OK, so here's two in-progress renders to showcase what I mean. The first scene you can see uses all OOT hairs (I left them unparented so you can see them in the scene tab). After forty-four mins progress has reached 33%. Look particularly at the speckling around the blonde hair- interestingly the darker hairs on the left of the image weren't as dramatically affected. It's worth pointing out that for the first ten mins the screen was blank and the computer stalled.
The second file uses all Aprilyish hairs and you can see the dramatic difference in speed. The scene finished in 21 mins, and it's worth noting that there was no freeze at start-up- in fact, by ten minutes in the render was approaching 50% completion.
Now it's worth re-stating that this is a completely new issue for me. I don't know if there are other hair models that have a similar slowing effect, or if it's a product of the light sets I'm using (mainly Stonemason ones). At the moment, it seems like OOT is the main factor in delays, but this has never been the case before.
What you are commenting about the blonde/light hairs having a speckling/halo I believe is a known issue with the Iray engine in DS 4.15. As I noted in my earlier post, there are some threads in the forums about this issue and the current workaround is to reduce the Cutout Opacity value (found in the surfaces tab for the hair) to a value below the default 1.0 (I use 0.99). This greatly reduces the speckling effect. For whatever reason, this issue does not come up as noticably with darker hair colors.
Still not sure why you would be having issues with render starts, unless there is something bottlenecking your CPU/RAM (the Iray setup is very CPU intensive, but once the render starts everything gets pushed over to the GPU and your 2070 should have enough horsepower to take things from there). Do you mind posting your CPU/RAM specs for comparison?
It's an intel i7, 2.9GHz, with 16GB RAM and a Gforce RTX 2070 Super. Like I said, I've been blown away by its performance so far and I've routinely been working with six or seven figures at once since I got it. I'm not sure how the presence of the OOT hairs would cause a CPU bottleneck when other hairs didn't. Ten minutes doing nothing with the screen and mouse locked, vs 50% completion and the computer multi-tasking with firefox and MS Word running in the background is quite a dramatic change to attribute to four hair models.
I'll re-render the first scene using your opacity fix and see how that goes for me.
I am wondering if you are running out (or nearly out) of system RAM when starting a render. The 2070 Super has 8 GB of VRAM, which is nice since as you note you can now render scenes with 6-7 figures. In general, you want to have about 2 GB of system RAM available for every 1 GB of VRAM, so 16 GB of RAM may be pushing it too close. On my rig I used to have 32 GB of RAM with my Titan X Pascal (12 GB of VRAM), and when running large scenes I would occasionally run out of system memory, even though the scene itself used 11 GB VRAM. I recently upgraded to 64 GB of RAM (I got lucky and found 32 GB of the same model RAM on sale for 120 USD) and of course this problem no longer comes up (with texture reductions, I can now render scenes having up to 16 G3/G8 figures in them). You could use something like Task Manager in Windows 10 or some other monitoring program (GPU-Z, MSI Afterburner, etc) to monitor how much of your system resources are being used when starting a render.
Have you tried reducing texture sizes on the hairs as well? I believe all OOT hair comes with 4096 x 4096 default textures, which is overkill unless you are rendering at very high resolutions (I personally don't render above 2160 p). You could try something like the Scene Optimizer script available in the Daz Store to reduce the textures to 2048 or 1024--I have found that some of the OOT hairs are a little heavy when rendering at full default quality.
I hope some of these ideas can help get you on the right track.
I'll have a look at the scene optimiser- having not run into problems with OOT hairs before, I hadn't really considered it to be honest. The transparency thing worked quite well- still a freeze at start-up but not quite so long this time, and the render reached 86% in half an hour this time, which is a massive improvement on what it was doing before.
So I am wondering if there is anything new on this. If you are talking about new: 2021- 03 and/or 2021-09 OOT Hair, I too am experiencing long (long) render times. I have an RTX 2070 (8 GB VRAM) and 32 GB of system RAM and the new OOT hair takes easily twice as long for me to render. It's very nice but I must say when I installed them and saw the size of the packages I got a bit anxious and my outcomes support that worry.
I am curious if anyone has compared older OOT hair to these newer editions or if anyone has messed with the 'thresholds' for the textures in render settings to any success.
PS - my texture compression thresholds are already quite low (if I understand how this works) I think - Medium 512 and High 1024