Daz (Iray) Some hair is very grainy even after many iterations.

lawfullame

Active Member
Game Developer
Aug 6, 2019
669
986
I have problem with some hair. Some hair is very grainy even at point where the rest of the image looks decently. Use of such hair would mean the need for very many iterations. for each scene.

Other hair starts to look good after a few iterations.

Is there a trick for iray hair shaders that can make rendering easier without having to choose a completely different hair?
 

recreation

pure evil!
Respected User
Game Developer
Jun 10, 2018
6,327
22,777
I have problem with some hair. Some hair is very grainy even at point where the rest of the image looks decently. Use of such hair would mean the need for very many iterations. for each scene.

Other hair starts to look good after a few iterations.

Is there a trick for iray hair shaders that can make rendering easier without having to choose a completely different hair?
that happens when the hair has a lot of polygons and/or layers, which usually means they are of high quality. You could stop the render when you think everything but the hair looks good enough, save it and then re-render the hair with the spot render tool, which usually doesn't take as much time because it only renders a part of the render.
 
  • Like
Reactions: Korentin

Deleted member 1121028

Well-Known Member
Dec 28, 2018
1,716
3,308
You could try to use different hair shaders (like the one made by or ) instead of the original one.
 

Rich

Old Fart
Modder
Donor
Respected User
Game Developer
Jun 25, 2017
2,566
7,382
I have problem with some hair. Some hair is very grainy even at point where the rest of the image looks decently. Use of such hair would mean the need for very many iterations. for each scene.

Other hair starts to look good after a few iterations.

Is there a trick for iray hair shaders that can make rendering easier without having to choose a completely different hair?
Different hairs are implemented in different ways, and this can have a significant effect on render times. As recreation says, some hairs have a LOT of mesh detail. This is particularly the case with some of the newest hairs, as Daz is moving toward supporting strand-based hair. Also, some of the dForce hairs have just a ton of detail in them.

Older hairs typically have less detail - the hair is implemented as a number of cloth-like strips, with the detail in the hair being put in through the use of finely detailed textures and transparency maps. These tend to render more quickly, because iRay isn't spending nearly as long calculating the way that light bounces from hair strand to hair strand, and thus the pixels tend to converge more quickly.

Part of the issue could be lighting - iRay doesn't deal well with situations where there isn't a fair amount of direct light (e.g. HDRI, spotlight, etc.) pointing at areas it's trying to render. But if you keep everything else in the scene the same and just swapping to a different hair produces different results, then recreation's suggested "cause" is probably the correct one.

To provide a bit more detail on what recreation is suggesting with the spot render tool:

1) Render the scene until it looks good and stop it, or else set a number of iterations or time limit in the Render Settings tab (under Progressive Rendering) that gets the rest of the scene to meet your desires. Save that file.
2) Select the spot render tool (#1 in the screenshot)
3) Open the Tool Settings tab (#2 below)
4) In the Tool Settings tab, select "New Window" instead of "Viewport" (#3 below)
5) In the viewport, using the cursor, drag a rectangle that covers the hair that's causing problems.

This will cause Daz Studio to start up a render on just that portion of the overall scene, generating that to a new window. Since there are many fewer pixels to deal with, iRay will be focusing just on those, and iterations will proceed more quickly. When the hair reaches the point that you're happy with it, stop the render, save the file, and then use GIMP or Photoshop to superimpose the spot render on top of the problematic area in the original render.

screenshot.png
 

lawfullame

Active Member
Game Developer
Aug 6, 2019
669
986
Different hairs are implemented in different ways, and this can have a significant effect on render times. As recreation says, some hairs have a LOT of mesh detail. This is particularly the case with some of the newest hairs, as Daz is moving toward supporting strand-based hair. Also, some of the dForce hairs have just a ton of detail in them.

Older hairs typically have less detail - the hair is implemented as a number of cloth-like strips, with the detail in the hair being put in through the use of finely detailed textures and transparency maps. These tend to render more quickly, because iRay isn't spending nearly as long calculating the way that light bounces from hair strand to hair strand, and thus the pixels tend to converge more quickly.

Part of the issue could be lighting - iRay doesn't deal well with situations where there isn't a fair amount of direct light (e.g. HDRI, spotlight, etc.) pointing at areas it's trying to render. But if you keep everything else in the scene the same and just swapping to a different hair produces different results, then recreation's suggested "cause" is probably the correct one.

To provide a bit more detail on what recreation is suggesting with the spot render tool:

1) Render the scene until it looks good and stop it, or else set a number of iterations or time limit in the Render Settings tab (under Progressive Rendering) that gets the rest of the scene to meet your desires. Save that file.
2) Select the spot render tool (#1 in the screenshot)
3) Open the Tool Settings tab (#2 below)
4) In the Tool Settings tab, select "New Window" instead of "Viewport" (#3 below)
5) In the viewport, using the cursor, drag a rectangle that covers the hair that's causing problems.

This will cause Daz Studio to start up a render on just that portion of the overall scene, generating that to a new window. Since there are many fewer pixels to deal with, iRay will be focusing just on those, and iterations will proceed more quickly. When the hair reaches the point that you're happy with it, stop the render, save the file, and then use GIMP or Photoshop to superimpose the spot render on top of the problematic area in the original render.

View attachment 391414
Thanks.
But I was wondering if there was any property of MDL material surfaces used in hair that had a significant effect on noise in renders and where simple tuning can improve the result or performance, although the resulting hair appearance will be slightly different.
Something like translucency, top coat etc.

If I had to resort to spot rendering for each scene, I'd probably choose different hair.
 

recreation

pure evil!
Respected User
Game Developer
Jun 10, 2018
6,327
22,777
Thanks.
But I was wondering if there was any property of MDL material surfaces used in hair that had a significant effect on noise in renders and where simple tuning can improve the result or performance, although the resulting hair appearance will be slightly different.
Something like translucency, top coat etc.

If I had to resort to spot rendering for each scene, I'd probably choose different hair.
you could try using "base" instead of "high resolution" in parameters -> mesh resolution
 

lawfullame

Active Member
Game Developer
Aug 6, 2019
669
986
For example when I use these hair

I have a problem with noise mainly in outdoor scenes where HDRI is source of light.
It seems reducing glossy reflectivity helps a bit.
Also changing translucency color to something closer to the color of the hair imporoves the result.

When I leave the original gray translucency color, the hair looks dusty and render more noisy.

These hairs are more for cartoon style characters, but when I raise the subd level, and make the adjustments described above, I think they don't look bad even on a realistic character. This is the result after theseadjustments and 1000 iterations.
 
Last edited:

Rich

Old Fart
Modder
Donor
Respected User
Game Developer
Jun 25, 2017
2,566
7,382
It seems reducing glossy reflectivity helps a bit.
Also changing translucency color to something closer to the color of the hair imporoves the result.
Those both make sense. A highly glossy surface gets more of its final color from the surrounding illumination, from other things near it, etc. iRay has to work harder when it has all those "light bounces" to take into account. Translucency is the same way - cutting down on either of them means that more of the final result is generated from the base color, and less from "other stuff."
 

PowerZ

Newbie
Dec 24, 2017
24
58
Thanks Rich for taking the time to write that quick tutorial on spot rendering.
I was having a hell of a time with the grainy hair issue.
This was a quick fix and awesome.
 

lawfullame

Active Member
Game Developer
Aug 6, 2019
669
986
I usually use spot rendering for example when the facial expression changes, but the rest of the scene remains the same.

But for the spot render part and the rest of the scene I use the same number of iterations.
Do you have experience how well the parts fit together when, for example, you use 5000 iterations for a spot render and 1000 iterations for the rest of the scene?
 

PowerZ

Newbie
Dec 24, 2017
24
58
I usually use spot rendering for example when the facial expression changes, but the rest of the scene remains the same.

But for the spot render part and the rest of the scene I use the same number of iterations.
Do you have experience how well the parts fit together when, for example, you use 5000 iterations for a spot render and 1000 iterations for the rest of the scene?
So you just spot render the facial features and fit it a finishing program?
Wow that must save some time. Is it hard to match everything up?
I'm not the greatest at blending.
 

lawfullame

Active Member
Game Developer
Aug 6, 2019
669
986
So you just spot render the facial features and fit it a finishing program?
Wow that must save some time. Is it hard to match everything up?
I'm not the greatest at blending.
Yes, I just render the head and put the spot render in GIMP into the main scene and merge it. It works well if nothing else changes in the scene when I use the same lighting, the same objects around and so on. But sometimes you need to use a larger spot render around the face. For example, a chin can cast a different shadow on the neck when the mouth is open.
 

mickydoo

Fudged it again.
Game Developer
Jan 5, 2018
2,446
3,557
Yes, I just render the head and put the spot render in GIMP into the main scene and merge it. It works well if nothing else changes in the scene when I use the same lighting, the same objects around and so on. But sometimes you need to use a larger spot render around the face. For example, a chin can cast a different shadow on the neck when the mouth is open.
Anyone playing along that uses photoshop paste special - paste in place does the same thing.
 

Porcus Dev

Engaged Member
Game Developer
Oct 12, 2017
2,582
4,705
In Photoshop, if you open both images (the complete image and the one created with spotrender) and drag the layer of one image over the other image with the "Shift" pressed, it will keep the position :D;)
 

lawfullame

Active Member
Game Developer
Aug 6, 2019
669
986
Anyone playing along that uses photoshop paste special - paste in place does the same thing.
Unlike Photoshop, GIMP is free.
In Photoshop, if you open both images (the complete image and the one created with spotrender) and drag the layer of one image over the other image with the "Shift" pressed, it will keep the position :D;)
In GIMP the spotrender part also keeps position.
 

Deleted member 167032

Alternate Existence
Donor
Game Developer
Aug 16, 2017
2,719
4,944
Actuallyyyy.... just dragging it into PS(no key holding necessary needed) it lines up by itself or at least for me using CS2016 and CS2019...
I am sure in GIMP there is similar import function.


In Photoshop, if you open both images (the complete image and the one created with spotrender) and drag the layer of one image over the other image with the "Shift" pressed, it will keep the position :D;)
 

mickydoo

Fudged it again.
Game Developer
Jan 5, 2018
2,446
3,557
Actuallyyyy.... just dragging it into PS(no key holding necessary needed) it lines up by itself or at least for me using CS2016 and CS2019...
I am sure in GIMP there is similar import function.
Mine keeps moving a couple of pixels out whack doing that, fucked if I know why.
 

Porcus Dev

Engaged Member
Game Developer
Oct 12, 2017
2,582
4,705
Mine keeps moving a couple of pixels out whack doing that, fucked if I know why.
The same thing happens to me (Photoshop CS6) if I drag one image directly on top of another; but if I open the two images and drag the layer on top of the other image with pressed "shift" it works perfect :p
 
  • Like
Reactions: mickydoo