Iray refraction creating anomalous opacity with geoshell
Reality1
Posts: 115
Has anyone seen an issue where a geoshell becomes partially opaque when using refraction in Uber-IRAY surfaces?
The (partial) opactity seems proportional to the refraction weight allowing the surface below to bleed through. This is happens even when the surface is set to be completely opaque. Subsurface scattering is off on the geoshell surface.
Is there a way to inhibit this behavior? :-)
Post edited by Reality1 on
Comments
Yes refraction makes the surface transparent and reflective, so even if the surface has the opacity set to 0 it will still render, I think thats the reflective nature of refraction at work, think water or glass.
What behaviour were you hoping to get from the refraction channel?
Hmmm. Ok. Thanks!
I was setting the index of refraction to 1 hoping to overlay a mirror effect with the index weight. It seems strange that it would pass a seemingly arbitraty amount of the light and then pass it back from the surface below. Looks like this is a conceptual matter of index of refraction VS the phenomenon of refraction itself.
Are you sure you aren't confusing refraction with reflection?
There are two ways of making a surfaced see-through in Iray, with two very different applications.
If you can see though (part of) a surface because there's nothing there, you use Cut Out Opacity. Areas that have a value of 0 have been "cut out" and don't show in the render. You can put this channel to other cunning uses, but that's what it's really for.
If you can see through an object because it's made of a transparent material, like glass or water, you use Refraction. Areas that have a value of 1 allow light to pass through them, but not without bending (refracting) it and maybe reflecting some of it back.
To get a reflective surface, you need to look in the gloss channels.
In Octane you can make a surface into a mirror by setting the index of refraction to 1. This makes the incident angle and the reflected angle equal. I was expecting the same behavor from IRAY when the the material was set to be completely opaque. As it turns out the "Weight" of the refraction is actually proportional to the opacity for the IRAY-UBER refraction channel. In an actual physical surface this not separable from the material's opacity. There should be a distinction between a layer operations and a channel operations when referring to "Weight". Of all the renderers I've used, I find IRAY-UBER the most unpredictable, wich is frustrating because it's cabable of excellent quality.
Iray is plenty predictable once you stop expecting to behave like soome other rendering engine.
The Refraction Index of 1 is Air so is clear.
To get a mirror the Refraction Index would be 1.55 and then set the Glossiness to 1.
Being a "physically based renderer" I'm just wanting IRAY not to defy the laws of physics.
A perfect mirror can be defined as having a reflection R=1 and a phase change upon reflection of 180 degrees. The Fresnel formula for reflection at an interface of air with material at perpendicular incidence is R=(1−n)/(1+n). R is the amplitude reflection, the intensity reflection (energy) is R*R. So a perfect mirror would have to have n→∞.
So R=1 for a perfect mirror.
This is a Primitive Plane, Metallicity 1, Glossy Layered Weight 1, Glossy Colour White, Scatter Only, Glossy Reflectivity 1, Refraction Index 1.55.
2020-04-21 16:50:00.921 Total Rendering Time: 37.77 seconds
Click on image for full size.
1.55 why didn't I think of that. How silly of me.
Seriously though. Thanks for the number, but the original question was about how and why light passes through the UBER surface when the opacity is set to zero. I was trying to create a perfectly reflective layer to make a more realistic looking metal. I didn't want this to turn into a complaint about IRAY syntax and symantics, and perhaps I just haven't found the proper documentation, but it's phenomenal the amount of time I've wasted trying to understand what to expect from the IRAY-UBER parameters.
Do you have a screenshot of the viewport and your surface settings so we can see what you are trying to achieve and the effect you are getting?
Oh no. I've moved on from that now. I'm still dealing with another IRAY shader issue though. I'm presently trying to understand why Glossy Layerd Weight doesn't control the weight of the glossy layer. For example, when I have Glossy Layerd Weight set to zero, Glossy Roughness still has a major impact on the specularity. It's probably just me not understanding what zero means.
I had another look and if you turn Share Glossy Outputs to Off it allows the light to pass through the glossy surface and gives a reflective layer with the underlying colour showing through. I think that is what you mean I just tried it on an eye where the Cornea is reflective and see through showing the Iris below, turning it on makes it go dark and the iris colour barely shows through.
I found this helpful.
http://docs.daz3d.com/doku.php/public/software/dazstudio/4/referenceguide/interface/panes/surfaces/shaders/iray_uber_shader/shader_general_concepts/start