Jump to content
Hash, Inc. - Animation:Master

Subsurface scattering and ambient occlusion not playing well together


R Reynolds

Recommended Posts

Shown are three copies of the head of the Jungle Queen. Each head uses single attribute "skin" materials. The leftmost head material has subsurface scattering turned OFF while it's turned ON in the rightmost head. The centre head has subsurf. scat. turned OFF on it's right side while it's turned ON on it's left side. These three models are arranged in a chor that uses a single "sun" style light source and the global color (256, 256, 256) for ambient occlusion.

With subsurf. scat. turned off in the camera, all three heads are screen rendered as expected with just sun, just ambient or both illuminating it. When subsurf. scat. is enabled in the camera and the only illumination is the sun, the screen render is as expected. Turning on ambient occlusion in the chor and the screen render is not what I expected.

subsurf_scat_bug.jpg

Results are identical in V19.0p and v19.5a.

subsurf_scatter_bug_embed.prj

Link to comment
Share on other sites

  • Replies 6
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

  • Hash Fellow

I have a dim recollection that SSS only works in renders to file.

SSS+AO is also complicated. I think that is because SSS is very much about light direction while AO has no specific direction.

My inclination would be do the AO as a separate pass and composite it.

Link to comment
Share on other sites

Quote

...SSS only works in renders to file

SSS is not calculated with a progressive screen render. But compare the attached, render to file image with the previous final screen render and they appear to have very similar results.

Quote

...do the AO as a separate pass and composite it

You say that as though there is an SSS buffer that can be rendered separately. I started browsing the SSS sub-forum and found that this has been an issue since at least 2008 and in this https://forums.hash.com/topic/33040-rendering-sss-separately/ thread almost exactly 15 years ago you wrote;

Quote

I don't think A:M's OpenEXR render includes a separate AO buffer. You'd have to make one manually, which clever people do.

So I guess I'll have to be more clever 😄.

three _heads_render_to_file.jpg

Link to comment
Share on other sites

  • Hash Fellow

I should like to meet 2008 Robcat, he had so much excitement about this stuff.

 

The more clever tactic to get a separate AO channel, if it were not supported by the renderer, would be to set all to objects to white, turn off all other lights, and do an AO-only render.

However, it turns out EXR (most clever of all) can save an AO channel...

image.png

 

 

Here is the above PRJ, the EXR file and a render preset with the render settings I used.

AOTest04.zip

Link to comment
Share on other sites

  • Hash Fellow

If you already have a dedicated compositing program like After Effects, or a paint program like Photoshop that includes compositing modes, that is the way to go with investigating this "post-processing" stuff, however... A:M does have some basic compositing powers and they work with OpenEXR!

There is a Tech Talk on A:M Composite projects https://forums.hash.com/topic/13249-tech-talk-series/

I don't recall what's in it. I'd have to ask 2008 Robcat about that.

 

Link to comment
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...