question

Daniel Plessis avatar image
Daniel Plessis asked ·

Rendering Randomwalk SSS in Arnold 5.1 acting vastly differently to Arnold 5.0?

We recently upgraded from Arnold 5.0.2.3 to Arnold 5.1.1.1, HtoA 2.2.2 to HtoA 3.0.3.

I noticed a problem with the SSS model changing drastically from previous shaders I'd built. This problem being in the Randomwalk SSS model on the Standard Surface shader.

As you can see in the image attached, I am comparing the Arnold 5.0(left hand side) setup to the 5.1(right hand side) setup and the new 5.1 setup is clearly acting strangely. I dont see much of an issue on larger objects but as soon as you start using Randomwalk SSS on smaller objects such as grass, or these thin tubes it starts acting very strangely, absorbing all the light and not really budging much even when playing with the sliders as done in the previous version.

These 2 scenes are set up identically but are rendering quite differently.

Has anyone else noticed these differences or is this perhaps a bug in the new 5.1.1.1?

Please let me know your thoughts,

Thanks!

arnoldshadershoudinishadingstandard surface
sss-test-comp.jpg (579.2 KiB)
1 comment
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Hey!
I have also been experiencing strange results at smaller scales with sss in Houdini. Interested to see what others have been experiencing.

1 Like 1 · ·
Frederic Servant avatar image
Frederic Servant answered ·

@Daniel Plessis yes, I would switch to diffusion for such small radii indeed due to hard precision issues with randomwalk. If you're using this for grass, I would definitely follow @Max Tarpini's advice and try thin walled instead of SSS.

Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Max Tarpini avatar image
Max Tarpini answered ·

Ehy Daniel, I'm really shading some grass as we speak. Here I use a plain 'translucent' BRDF and fully skip SSS for improved speed and consistency. It's a custom shader however still in wip. For grass and factory arnold shaders you may want to try also with single-sided polys where you check then 'Thin Walled' which in turn should also get you out of the width problem.

edit: effectively when in 'thin walled' mode it does look that also arnold shaders get back to plain translucency and don't use SSS so even if the Type options is still available in the UI it doesn't look is really used

edit2: below a comparison on foliage for example. with 'thin walled' you have only translucency no real SSS. Randomwalk doesn't really work good for this kind of geometry. Diffusion is just perfect ! First because the assumption it does (semi-infinite slab) here is correct, second because being 'diffusive' it can mimic the whole volumetric transport you grt in a bush or bunch of leaves or grass.


Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Frederic Servant avatar image
Frederic Servant answered ·

Randomwalk SSS was fixed for precision issues with small radii in Arnold 5.1. The images for 5.1 look a lot more correct to me, with the smaller cylinders becoming desaturated. The curves in 5.0 really look bad, we've disabled SSS for curves in 5.1 to prevent this.

Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Daniel Plessis avatar image
Daniel Plessis answered ·

This is the grass I was using in my scenes, it was an underwater scene and as you can see after updating the Randomwalk grass shader completely changed. Getting a sort of match-able result now with the hair shader. So will probably just go with that or diffusion when dealing with tiny grass, or object similar.


grass-test-01.jpg (944.2 KiB)
1 comment Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Ehy it looks really good with the hair shader .. more light over the whole bush even when compared to 5.0rw.

1 Like 1 · ·
Daniel Plessis avatar image
Daniel Plessis answered ·

Hey Max, wasn't too worried about the speed I was currently getting, but i did play with making the grass non thick and using thin walled, did give me an alright result as well. Would you mind sharing your shader or what you mean by 'translucent' BRDF? Because shading in Houdini i'm not finding where you'd create or use transluceny without it being transmission or SSS.

Thanks!

1 comment Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

I added an 'edit2' on my initial observations

0 Likes 0 · ·
Daniel Plessis avatar image
Daniel Plessis answered ·

Hi @Max Tarpini, thanks for the the reply. Will definitely play around with the hair shader to see if i can get the result i wanted, this test spawned off of me doing really fine grass which I was using the Randomwalk on, and is where i noticed it. Thanks for the tip on the inter-action between different objects!

Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Max Tarpini avatar image
Max Tarpini answered ·

Just an hint. On very small radii cylinders you may consider to use an hair shader for a better phys behaviour. Effectively initial research on hairs in pathtracing was focusing on eliminating the shading variations across the width of fibers. Also consider that with randomwalk sss you don't have inter-action between different objects (it stays enclosed in the object volume) where you do with diffusion and latest hair shaders.

Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Daniel Plessis avatar image
Daniel Plessis answered ·

Hey @Frederic Servant, thanks for getting back to me!

I did read up about the bug fix for zero radius on Randomwalk, and I hear what you're saying, mathematically it makes sense for the cylinders getting desaturated as they get smaller. My main issue however was that once you get to the small or smallest cylinder, no matter how small you made your radius or scale, it just took in the light color (in this case white) and bounced it back 100%.

So would the recommendation then be to not use Randomwalk on such small object and instead use the old Diffusion SSS model?

Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Welcome to the Arnold Answers community.

This is the place for Arnold renderer users everywhere to ask and answer rendering questions, and share knowledge about using Arnold, Arnold plugins, workflows and developing tools with Arnold.

If you are a new user to Arnold Answers, please first check out our FAQ and User Guide for more information.

When posting questions, please be sure to select the appropriate Space for your Arnold plugin and include the plugin version you are using.

Please include images, scene and log files whenever possible as this helps the community answer your questions.

Instructions for generating full verbosity log files are available for MtoA, MaxtoA, C4DtoA, HtoA, KtoA, and Kick.

If you are looking for Arnold Documentation and Support please visit the Arnold Support site.

To try Arnold please visit the Arnold Trial page.

Bottom No panel present for this section.