Forum: Poser - OFFICIAL


Subject: Trying to achieve good water

Daeshawn opened this issue on Mar 31, 2009 ยท 78 posts


bagginsbill posted Wed, 11 November 2009 at 9:30 PM

Here is the tool.

The graph shows three functions. Red is the real Fresnel equation. Blue is the approximation. Purple shows 10 times the difference between the approximation and the real thing.

On the right are the formulas. Formula y1 (in blue) is the approximation. It uses three parameters, b, s, and p, and another formula, y4.

y4 is actually just the cosine of the angle of incidence and is implemented by the Edge_Blend node in the shader.

Functions y4, y5, y6, y7, and finally y8 implement the true Fresnel equation for unpolarized light. The last one, y8, is what is graphed in red.

Function y9, the purple one, is calculating 10 times the difference between the approximation (y1) and the real equation (y8).

The parameters are at the bottom.

a = the desired index of refraction
b = the blend value for the approximation
s = the subtract coefficient value for the approximation
p = the power value for the approximation

The blending value, b, can also be thought of as the "base" value - i.e. it controls the lowest value produced when the angle of incidence is lined up with the surface normal, i.e. when the difference between these angles is 0.

For IOR = 1.54 (glass) I came up with the values shown. For the water, I just decreased b a little bit, but that was simple laziness on my part.

I have better values for glass, now, as well.


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)