PBR Specular Roughness Noise

   7545   16   2
User Avatar
Member
6 posts
Joined: March 2015
Offline
Hi there

I have been having some trouble rendering out some objects with PBR that has a fairly high specular roughness of 0.4

The render always comes out very noisy in the specular aov. I am able to reduce this somewhat by setting pixel samples to very high values such as 15 x 15 but even this still seems to not totally eliminate the problem. Also when I have high motion blur the problem seems to be exacerbated.

I have looked at Min Reflection Ratio as another solution other than samples but this seems to offer not better result.

Has anyone else experienced problems rendering out objects like this? and have you found any solution other than setting high pixel samples?

Cheers
Tav
User Avatar
Member
32 posts
Joined: Dec. 2014
Offline
Yeah mate, totally having this problem here: https://vimeo.com/121749383 [vimeo.com]

I've tried everything but can't completely get rid of these little hot pixels popping up everywhere - I would also love to find a solution
Kind Regards,

Ben
User Avatar
Member
2624 posts
Joined: Aug. 2006
Offline
Try ….

Mantra rop > Limits > change the color limit to 5 from the default 10. to clamp that HDr with super bright pixel values. Or clamp the HDR super values in Nuke.

Rob
Gone fishing
User Avatar
Member
32 posts
Joined: Dec. 2014
Offline
In my example I don't have a HDR in the scene. I've tried all the ROP settings and still no luck.
Kind Regards,

Ben
User Avatar
Member
702 posts
Joined:
Offline
have you tried using indirect sample limit? On the rendering/sampling tab:



Enable Indirect Sample Limits : On
Min indirect 2
Max indirect 9
indirect noise level : .01 or .001

this may help and you could possibly use a lower Pixel Sample Rate

This parameter can be used per object to only focus the sampling on the shader(s) that need it rather than the whole scene
User Avatar
Member
379 posts
Joined: Dec. 2006
Offline
Pixel sampling should be around 5-6. Noise level is usually only thing I tweak to get rid of noise.

But I think circumonkey solution should work, that usually kills hot pixels. Are you using area lights? What is intensity of lights?
User Avatar
Member
6 posts
Joined: March 2015
Offline
Thanks for the replies!

I have tried with a point light a point with a spot cone a grid and a grid with spot cone and all seem to have the same result.

I notice if i turn off motion blur it seems to clear up much better than with it on.

I will make an example scene when I get home to demonstrate this better but the color limit unfortunately does not really help in this senario.

Also the noise is in direct spec only and there is no indirect in the scene, and there are no HDRIs being used.

I have tried chaning the variance and samples on the direct from anywhere between

min 1 max 256 variance 0.002

to

min 10 max 256 variance 0.002

But u found this did not seem to affect the noise at all where as the pixel samples did.

I will post a render and example scene once i'm home tonight to give a clearer example
User Avatar
Member
2624 posts
Joined: Aug. 2006
Offline
All I can say is post a scene file showing the issue. If you can make it happen on some default houdini geo , even better.
Try to eliminate things that could cause it, geometry topology is first on my list.

Rob
Gone fishing
User Avatar
Member
4189 posts
Joined: June 2012
Offline
Please try setting the Attenuation to ‘Physically Correct’ on Light/Attenuation Option.

Thanks!
User Avatar
Member
918 posts
Joined: March 2014
Offline
Tav
But u found this did not seem to affect the noise at all where as the pixel samples did.
Have you tried increasing your light samples?
User Avatar
Member
6 posts
Joined: March 2015
Offline
Ok so i managed to wip up a quick little example with one bit of geo and one light

Attachments:
specNoise.hipnc (301.4 KB)

User Avatar
Member
6 posts
Joined: March 2015
Offline
Also here is a render. Had to zip it as i don't seem to be able to attach an exr but you should get the same thing hitting render on the scene file anyway

Attachments:
specNoise.zip (123.9 KB)

User Avatar
Member
702 posts
Joined:
Offline
this is purely a motion blur related problem, and can only be fixed using pixel samples, AFAIK

if you set the min/max back to the defaults : 1, 9, .05

and set the pixel samples to 16x16, you will see a nice render in the specular

not sure if this is the ideal solution, or the only one…perhaps another user may have another option
User Avatar
Member
6 posts
Joined: March 2015
Offline
Yeah that was what I had found but the scene I actually need to render is hugely complex and has hundreds of bits of geo like this so as you can imagine having 16x16 pixel samples is very expentive being about 10 hours or more a frame.

If anyone else has any tricks to get around this they would be greatly appreceated.
User Avatar
Member
2624 posts
Joined: Aug. 2006
Offline
Not sure I even see this as a valid example. One primitive tube 61 houdini units hi / no subdivision of the surface that travels 10 meters plus in .3 second with a area light intensity of 4096 .

If you look at the render image in mplay, there's no super bright pixels, the specular is just above 1 ( acceptable) . Turning to the mantra rop you have motion blur turned on and a motion factor of zero. Finally looking at the shader you have no displacement and specular intensity of 0.1

I think you must have a combination of issues but having a super fast thin moving object to camera, you should be increasing the motion factor value and lowering the pixel samples.

I have had a play with your scene and tried to make a more realistic set up in h14. Main thing was to up the motion factor and lower the pixel samples and just for added measure up the xform samples as the tube arcs towards the camera. Renders nice and fast . If its not the issue feel free to email a scene for me to take a look at.

Rob

Attachments:
specnoise_117_fixed.hipnc (460.2 KB)

Gone fishing
User Avatar
Member
4189 posts
Joined: June 2012
Offline
Tav
having 16x16 pixel samples is very expentive being about 10 hours or more a frame.

You can use GetBlurP in the shader to produce a velocity pass, then vector blur it in Nuke. The Samples can be quite reasonable at 3x3.

The advantage is the motion blur is only rendered in Nuke, not Mantra.

Attachments:
NukeVelPass.png (100.9 KB)
specnoise_117BlurP.hipnc (301.7 KB)
MoBlur_.gif (151.1 KB)
GetBlurP_.png (43.6 KB)

User Avatar
Member
6 posts
Joined: March 2015
Offline
Thanks MartybNz!

I had been looking at this but was hoping for a solution within Mantra.
But thank you very much for the explaination of how to set this up very handy!
  • Quick Links