Tue, Nov 19, 9:38 AM CST

Renderosity Forums / Poser - OFFICIAL



Welcome to the Poser - OFFICIAL Forum

Forum Coordinators: RedPhantom

Poser - OFFICIAL F.A.Q (Last Updated: 2024 Nov 18 10:25 pm)



Subject: Tender flaky skin or why fastscatter makes a fool of you :)


bagginsbill ( ) posted Mon, 19 September 2005 at 1:21 PM · edited Tue, 19 November 2024 at 9:25 AM

file_291580.jpg

I posted some test renders the other day and a couple folks asked me to tell what I did to make them look real. So here is the jist of it.

(Note: This is kind of long - sorry - hope some of you find this interesting.)

First a little theory. Lots of folks have correctly talked of the importance of subsurface scattering for realism. More than a few (including me) have tried to use the FastScatter node to accomplish it. I did a lot of very intricate tests with it to see what it's actually doing. My conclusion is the FastScatter node is mostly useless, except for synthesizing the glow of a backlit ear. And I don't have a clue what the Wacro "Add Subsurface Scattering" is trying to do. All I ever get from it is a wierd sunburn effect. So I started thinking about how skin really works and how to model it.

A very simplistic model of the skin is that there are two layers. The outer layer (epidermis) is mostly dead skin cells. They form a thin, flaky, translucent, yellow-white layer on top of the living skin. (Think of what dandruff looks like.) Underneath are living skin cells with lots of capillaries bringing blood everywhere.

Figure 1 shows a torus I rendered in Poser with a procedural texture I made to model the two skin layers. For the lower layer I just used a solid blood red. For the epidermis I used a displacement map made from the Granite node. I gave the flakes a slightly yellow color and made them about 30% transparent, with a very slight specular reflection. Note that Firefly is lying about the texture in this render - it shows big red dots at this scale which is totally incorrect. The red parts are much smaller than a single pixel in this render.

Figure 2 shows a closeup of the middle of the torus - the part that points straight at the camera. Now you can better see the structure of my skin model. Gaps between the flakes reveal the blood. The flakes are pink because they are so thin the blood colors them somewhat.

Figure 3 shows a closeup of the edge of the torus. You should notice two things. The flakes are now slightly sticking out in front of each other, so when you look through one, you get the color of others behind it. So they are much less pink. Also, from this angle the 3-dimensional flakes are almost completely obscuring the blood layer. Another effect of this angle is that the specular reflections from individual flakes are adding up to a lot more white.

In figure 4 I used a trick to get the overall macro effect that this produces. It is showing a section of the right side of the torus. I rendered this at 3200 by 3200 pixels (10 minutes!). I then loaded the render into photoshop, blurred it (to get the effect of these things being microscopic) and shrank the image to the size you see here. You might disagree with me, but that sure looks a lot like skin to me!!! Notice that the center is much redder than the edge, there is a generally mottled appearance to it, and that the edges are showing a bit more specular reflection, even without the presence of a backlight at the right angle.

To my mind, figure 4 demonstrates that the model is a reasonable simulation of skin. But if you try this texture on a figure, the poser renderer does a terrible job - it looks like Figure 1. The problem is that it is sampling individual microscopic points and then coloring an entire pixel based on the sample. However, the macro level is actually very simple to model with Poser.

On the right I show three renders with and without my material nodes. I inserted two lo-res Jessi figures. The one on the left is stock - untouched. The one on the right has the material room changes I describe below that hopefully model the skin better. I used three lights, an IBL, a fill light on the front, and a back light from behind and a little riight. I then just moved the camera and my fill light around to show you three examples.

(Please note: I have 3 monitors and these look different on each. The subtle red-shift produced here may look too weak or too strong on your monitor. Hopefully, now that you know how I'm doing this, you should be able to make your own adjustments for your scenes.)

The Edge Blend node basically chooses a color based on interpolating between two specified colors using the angle between the viewer and the surface normal as the input. So I added an Edge Blend going from Black to RGB 20,0,0 to the Alternate_Diffuse channel. This gives the figure the realistic ruddy tone on the skin that faces the camera. You can play with the Inner_Color and attenuation to adjust the affect. Higher attenuation will make the red drop faster as you get to the edge.

The Blinn node is a specular reflection model that is strongest when the camera AND a light source form a shallow angle to the surface AND the light source points toward the camera. I set the Blinn specular color to RGB 255,255,240 - just slightly yellow.

Finally, because there is a tiny bit of shine on skin that faces the camera, I set the regular Specular_Color value to RGB 31,31,31. You don't want a sharp highlight so I set the size to 0.1 - I often play with this to make the skin look more/less wet. Experiment.

I'm not showing it here, but I also used a TINY bit of Spot node on the skin texture to get some of the color mottling that I see in Figure 4. Just a tiny bit. In an extreme closeup, you can really see it.


Did this post help you? Two much detail or not enough? Let me know. I've learned a lot from the community and want to give back so don't be shy.


Renderosity forum reply notifications are wonky. If I read a follow-up in a thread, but I don't myself reply, then notifications no longer happen AT ALL on that thread. So if I seem to be ignoring a question, that's why. (Updated September 23, 2019)


linkdink ( ) posted Mon, 19 September 2005 at 2:09 PM

Very interesting. I'd like to see a closeup of a full size render with your techniques. Hopefully face_off will chime in here with his knowledged and experiences as well.

Gallery


Letterworks ( ) posted Mon, 19 September 2005 at 2:17 PM

b.m. thank you! mike


Singular3D ( ) posted Mon, 19 September 2005 at 3:04 PM

Exiting investigation. Great job.


randym77 ( ) posted Mon, 19 September 2005 at 3:09 PM

Wow, that looks great.


svdl ( ) posted Mon, 19 September 2005 at 3:15 PM

Thanks for sharing this info - very useful!

The pen is mightier than the sword. But if you literally want to have some impact, use a typewriter

My gallery   My freestuff


msg24_7 ( ) posted Mon, 19 September 2005 at 3:41 PM

Some very interesting information... Thank you!

Yesterday's the past, tomorrow's the future, but today is a gift. That's why it's called the present.


dlk30341 ( ) posted Mon, 19 September 2005 at 4:23 PM

Thanks for sharing! Great info here :)


bagginsbill ( ) posted Mon, 19 September 2005 at 4:34 PM

file_291581.jpg

Here's Vicky with this treatment. Her skin is so much lighter I only used Red 15 on the edge blend.


Renderosity forum reply notifications are wonky. If I read a follow-up in a thread, but I don't myself reply, then notifications no longer happen AT ALL on that thread. So if I seem to be ignoring a question, that's why. (Updated September 23, 2019)


bagginsbill ( ) posted Mon, 19 September 2005 at 4:35 PM

Content Advisory! This message contains nudity

file_291582.jpg

Here's a full body study of Vicky.


Renderosity forum reply notifications are wonky. If I read a follow-up in a thread, but I don't myself reply, then notifications no longer happen AT ALL on that thread. So if I seem to be ignoring a question, that's why. (Updated September 23, 2019)


randym77 ( ) posted Mon, 19 September 2005 at 4:39 PM

Holy guacamole! That looks amazing!


face_off ( ) posted Mon, 19 September 2005 at 5:14 PM

file_291583.jpg

Baggins - this is excellent. 1) I totally agree with you on FastScatter 2) Edge_blend...this is a tricky issue. Having alt diff red added based on an edge_blend is assuming the main light is coming from the camera - which is not always correct. If the light is elevated or off to the side, this will give slightly misleading results. Your alt_diff network was pretty much identical to what I started using, but I found it didn't respond to diverse lighting conditions. The solution was to feed in extra red based on the position of the light light, rather than the camera. See "Incidence Ramp" at http://www.users.on.net/~pkinnane/RealSkinShaderTutorial.html. I'm now also experimenting with a whole new way of doing sss, which can be a little tricky to tune, but gives nice results (render attached). 2) Blinn node...there is a fair bit more you can do in this area. The blinn properties of skin change depending on the angle of the skin from the camera. See Stahlbergs stuff at http://www.androidblues.com/shadetut.html. I think there is still a fair bit we can do with skin realism, so seeing people like yourself experiments is excellent. I think the next big leap will come from ray-traced reflections. Another idea is to detect the stretch of the skin from the uv strech, and lighten those areas...too many things to try....too little time.

Creator of PoserPhysics
Creator of OctaneRender for Poser
Blog
Facebook


PapaBlueMarlin ( ) posted Mon, 19 September 2005 at 6:06 PM

Very cool :) There's been a lot of great stuff for the skin. Is there any tricks to make the eyes look not so dead?



randym77 ( ) posted Mon, 19 September 2005 at 6:29 PM

file_291584.jpg

I tried your settings. Doesn't look anything like yours, but I kind of like it.

It's just normal lighting, because P6's advanced lighting is still beyond me. And I used the contour textures, because those are the ones I have. (I wish I had gotten the standard hi-res instead, but I didn't know any better at the time.)


Faery_Light ( ) posted Mon, 19 September 2005 at 7:51 PM

Question... Is this for P6 only or can it be done in P5?


Let me introduce you to my multiple personalities. :)
     BluEcho...Faery_Light...Faery_Souls.


DCArt ( ) posted Mon, 19 September 2005 at 7:54 PM

Very impressive stuff from both of you, bagginsbill and face_off!



PapaBlueMarlin ( ) posted Mon, 19 September 2005 at 8:34 PM

Randy, try adding a really low setting displacement using either the spots or granite node and see if that adds something to the texture...



tastiger ( ) posted Mon, 19 September 2005 at 8:50 PM

What I would be interested in seeing is a setup for material nodes that could be a starting point to completely procedural skin texture

The supreme irony of life is that hardly anyone gets out of it alive.
Robert A. Heinlein


11th Gen Intel(R) Core(TM) i9-11900K @ 3.50GHz   3.50 GHz
64.0 GB (63.9 GB usable)
Geforce RTX 3060 12 GB
Windows 11 Pro



linkdink ( ) posted Tue, 20 September 2005 at 1:01 AM

Great stuff, guys, keep it coming, keep experimenting... I see things I like in all 3 approaches above....

Gallery


Casette ( ) posted Tue, 20 September 2005 at 3:04 AM

Thanks for sharing it, bagginsbill. I want to try it :)


CASETTE
=======
"Poser isn't a SOFTWARE... it's a RELIGION!"


Indoda ( ) posted Tue, 20 September 2005 at 3:11 AM

Thank you - this is excellent experimentation. Off to try it. Keep it coming, please.

The important thing is not to stop questioning.
- Albert Einstein

Indoda


Tiny ( ) posted Tue, 20 September 2005 at 4:25 AM

Fantastic experiments and results!
Thank you all for sharing.

I wish some of our Python gurus could come up with a helpful texture tool
where at least some of this could be set up.



Tiny ( ) posted Tue, 20 September 2005 at 4:53 AM · edited Tue, 20 September 2005 at 4:53 AM

Duh...
Just noticed there is a Pythong script that do this.
:oP

Message edited on: 09/20/2005 04:53



takezo3001 ( ) posted Sat, 07 January 2006 at 11:26 AM

Hell YEAH! Finally an answe4r to my $200+ question! My problem with P6's Fast scatter is that it's IMPOSSIBLE to use cast-shadows making that FYCKIN' node comnpletely useless for a truly realistic render! The problem with this is the fact that they use SSS in the mat nodes instead of in raytracing! thereby making it completely useless! I'm pissed, because I spent $200+ for this feature! Thanks alot for this, I'm bookmarking this right now!



Privacy Notice

This site uses cookies to deliver the best experience. Our own cookies make user accounts and other features possible. Third-party cookies are used to display relevant ads and to analyze how Renderosity is used. By using our site, you acknowledge that you have read and understood our Terms of Service, including our Cookie Policy and our Privacy Policy.