If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.
Exciting News: Chaos acquires EvolveLAB = AI-Powered Design.
To learn more, please visit this page!
New! You can now log in to the forums with your chaos.com account as well as your forum account.
Announcement
Collapse
No announcement yet.
A Quantized-Diffusion Model for Rendering SKIN and Translucent Materials
I'm mostly convinced now that there is no bug. I think the problem is that we assume that the scattering medium inside the material is uniform, whereas skin is not. I guess that we will need to implement a dual-layer model that more closely represents skin (think VRaySkinMtl material )
I'm mostly convinced now that there is no bug. I think the problem is that we assume that the scattering medium inside the material is uniform, whereas skin is not. I guess that we will need to implement a dual-layer model that more closely represents skin (think VRaySkinMtl material )
Best regards,
Vlado
The more layers the better! You know...next thing every one will ask is render element per sss layer
The more layers the better! You know...next thing every one will ask is render element per sss layer
You do realize they are not like the normal layers in a blend material though, right? The interaction between the physical sss layers is not simply a linear one where you can just add them together.
Vlado in mental ray there is something like umh... WriteToColorBuffer where we can plug random stuff from shaders and then plug that in to render passes as an output. Could we not do something similar with SS and so on? We already have shader select which is great. Or is it still way too complicated?
Vlado in mental ray there is something like umh... WriteToColorBuffer where we can plug random stuff from shaders and then plug that in to render passes as an output.
The only way right now is to split your material into separate components inside a blend material, and then use a VRayMtlSelect render element. I agree that the process could be streamlined though.
Could we not do something similar with SSS?
It depends on what you want. The mental ray shader, being a simple approximation, calculates f.e. the shallow and deep scattering completely separately (exactly like two VRayFastSSS2 materials layered on top of each other), so the final result is simply a sum of these layers. But if the shader model correctly considers the skin as having two sss layers which interact with one another, their relationship is much more complicated than a simple addition (f.e. the shallow scattering layer filters the light that gets down to the deep layer and scatters it a bit, while some of the light in the deep layer goes back into the shallow one and changes its appearance). There is no meaningful way to separate these two components so that you can make use of them in post to reconstruct the original material appearance.
From I understand out of this discussion, people don't really need a physical sss They need something that they understand and can control, and which behaves similar to sss. F.e. people need control of the back scattering (I fully understand why), but this doesn't make any sense from a physical point of a view...
I think we all really appreciate you looking into a way to make the sss better or at least more intuitive. Its a hard call, cause I naturally really like the idea of having a very physically based system, its part of the reason I'm so interested in the unbiased rendering developments. You can see that the big studios are starting to lean towards physically based rendering, even Pixar, that bastion of cheating, is seeing the advantages of physically based lighting as time savings. So no, I would hate to see the SSS broken or replaced just to make it easy to use.
That being said I'm having a hard time figuring out how to get results that match observation. I assume its user error and an incomplete understanding of the controls but Ive been fighting sss in vray for awhile.
Here is a simple setup that I cooked up yesterday to show a typical case. Say I want to make Orange Juice. I want to have it match some photo reference. Pick any image, the less CC'd and retouched the better. http://tinyurl.com/cublygo
I know I want it to be refractive and fairly transmissive. I also want the scatter color to be very similar to the overall color. No matter what I try I get green in the transmission. Even following the help suggestions of setting the "Scatter color is set to a more saturated version of the same color." doesn't make it disappear. http://www.spot3d.com/vray/help/200R...stsss2.htm#ex8
So then you start to get creative and play with scatter color to anything in an attempt to get a more desirable result like i have in the material on the right in the image. Interestingly enough the material changes in a less than intuitive way. I wouldn't have expected the change in transparency/translucency even though I was looking to have the green knocked out by using the blue in place of a more intuitive color.
Regardless of the physical correctness of the model the end result is I cant get anything that matches observation. If its a matter of better education on the parameters, more sample materials or just better general understanding of physics Im happy to help get the info out there if indeed we can match what we observe.
If there is a bug in the model or it has limitations on matching certain materials again Id love to help track down whats going on/limitations so that others don't have to fight this the same way.
Here's the sample file. And if nothing else Id love to see someone make an example that works nicely and for me to have a better understanding of how to make this shader sing.
I also want the scatter color to be very similar to the overall color.
That's the point - it's not really a color. If I knew better back then, I would have named it "scattering coefficient" or something. The scatter "color" represents the scattering coefficients in the volume for the red, green and blue wavelengths respectively. While it has three components and it's convenient to represent it as a color in the UI, it does not behave as other colors like diffuse, reflection and so on. If you put orange diffuse in a VRayMtl material, orange diffuse is what you get no matter how look at the material. However, since scattering happens in a volume, the light changes as it goes through the volume - what comes out orange at one end, may end up as green on the other (or blue, or red), depending on the material properties.
Yep I completely get that. The trick is what would help us narrow down the desired look. Is it a rgb absorption curve where the given presets would give a better idea of what those curves should be?
Comment