meltz opened this issue on Dec 14, 2011 ยท 16 posts
bagginsbill posted Thu, 15 December 2011 at 6:26 PM
The principle whereby refract + diffuse + reflect <= 1 is called Conservation of Energy, or CoE. You can't have more energy coming from an object than the energy that reached the object, unless the object is emitting energy itself instead of just reflecting or refracting it.
In my shaders, CoE is always obeyed. Not so in most Poser shaders.
However, the "value" property of Poser specular nodes turns out not be normalized in the way we understand applies to Diffuse_Value and Reflection_Value. Therefore, you will see shaders from me where the sum appears to be greater than 1. If you normalize all the numbers, then they do not exceed 1, but the denormalized numbers don't have to (and can't) obey that rule. It's a non-rule actually, as you will see me break it all the time. Look in my latest shaders and see Specular_Value = 6 or more.
Meanwhile, the Fresnel_Blend, as seen above in my Jade shader, is blending between two normalized inputs and the blend is never greater than 1. The reason should be obvious as I've explained the general "Blend" function a billion times.
Blend(a, b, f) = (1-f)a + fb
If the quantities a, b, and f are all between 0 and 1 inclusive, then this equation is also always between 0 and 1.
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)