Saturday, September 10, 2011

LIGHT OBJECT: Attenuation


In the real world, the further away an object is from a light source, the less light it receives. For example, areas immediately around a lamp will always be brighter than areas that are, say, 5 feet away. In Houdini (and other 3D applications), this process of decreasing the light intensity based on the distance from the source is referred to as attenuation. 

Within the Light object node, there is an Attenuation Options tab that gives the user control over how much the light's intensity will drop off over distance. The Attenuation drop down parameter list provides the user with three options:  No Attenuation, Half Distance Attenuation, and Physically Correct. The default setting is No Attenuation.
No Attenuation
Half Distance Attenuation:  The user specifies a distance at which the light attains half of the intensity that it is at the origin of the light. The default value is 10 meaning that if the intensity of the light is set to 1, the intensity on any surfaces 10 units away is 0.5. The formula used for this type of attenuation is   CI = H/(H+D)   where H is the half distance and D is the distance from the light source. When D is 0, we end up with H/H which is 1. When D = H (the half-distance), the intensity is H/(H+H), which is half of the intensity. In a sense, the light is never fully extinguished regardless of the distance from the source.
Half Distance Attenuation
Physically Correct Attenuation: In reality, light falls off based on a much more accurate algorithm called the inverse sqaure law. The formula for such is   CI = 1/(D*D)   where for every unit of measurement we move away from the light source, we drop to 1/4 of the intensity of the previous unit. A point that is 1 unit away from the light source will receive the light's full intensity, while a point that is 3 units away will only receive 1/9 of the original intensity.

Inverse Square Law

Physically Correct Attenuation
Other parameters under the Attenuation Options tab:
  • Attenuation Start This parameter specifies the distance away from the light source where the attenuation will start calculating. Anything within this area will have constant intensity, and anything outside of this area will have calculated attenuation.
  • Active Radius When enabled, Active Radius facilitates a cutoff for the lights attenuation. Anything outside of this radius will receive no light from this source. This method works well to reduce calculations of lights that attenuate into infinity and can also speed up renders by avoiding lighting and shadowing calculations for light sources that are outside this radius.
  • Attenuation Ramp Multiplier - Enables a ramp control for the user to directly adjust the attenuation at different distances. This ramp is multiplied with the existing light intensity and it allows the user to directly adjust the attenuation for different distances. This parameter can still be used even with attenuation turned to No Attenuation if you need very particular results from your light.

No comments:

Post a Comment