SSS dark spots on contact, trying to solve with geometry nodes

So I’m making a character that has some furry tips that affects the silhouette, since it’s only major shapes I made it with a separated mesh and then tweaked the normals to match the base body, that way it looks like the fur is coming out of the mesh (sample):

It works really well and I recommend this workflow for this kind of task, especially for stills. The problem is that it doesn’t work well with SSS on Cycles, it seems like separated meshes makes an occlusion shadow when close of each other, while this same thing doesn’t happen when the objects are joined (sample). Since I’m trying to keep the model low poly (the screenshots are without optimal display), I’d have to apply all modifiers and then join the meshes, so that I could keep the custom normals from the furry part.

Example of the dark spot on the SSS material


In the left the meshes are separated, in the right they’re joined.

My knowledge of geometry nodes is almost null, but I think that I could use geo nodes to automate this process of “applying modifiers>joining meshes” while keeping the original objects low.
NOTE: I tried using a simple join mesh node, but it loses the custom normals, so it’s not that simple.

Of course, if there’s any other solution, maybe in the shader itself, it would be amazing.

Thanks in advance!

1 Like

@RicardoViana HI,

In geonodes, you can try a boolean Union to join and then transfer yr data with the dataTransfer mod.

Hope that helps.

2 Likes

Hey, thanks for answering!

I tried boolean, but it still loses the custom normal. The thing is I use the transfer data to make the custom normals, it actually take the normals from the base body.

Maybe if I join the meshes and then transfer the data after joining them? I’ll try that

If there were any way to make these SSS shadows go away, nothing of this would be a problem lol

It kind of worked, but the problem is that I can’t apply the transfer data modifier, since I’m relying on the subdivision to keep the model low poly. So I’ll have a hard time if have to move the object around, because it’s projecting the normals in realtime. I’ll keep trying and update here if I find a different solution.

1 Like