Skip to main content

Short note: Intensity attenuation, transparency

Short answer

Intensity attenuation reduces light as distance d increases, using f(d)=min(1/(a0+a1 d+a2 d^2),1) to avoid 1/d^2 harshness, and provides depth cues. Transparency lets light pass through: I=(1−kt)I_surface+kt I_background, with kt the transmission coefficient; advanced models include refraction via Snell's law.

Write a short note on intensity attenuation and transparency.

Intensity attenuation

Light from a point source becomes weaker as the distance d from the source increases. In theory it falls as 1/d², but this gives too strong a change for small scenes (and too large a value when d is small), so a function is used:

f(d) = min( 1 / (a0 + a1·d + a2·d²), 1 )

a0, a1, a2 are constants chosen for the best visual effect. The diffuse and specular terms are multiplied by f(d):

I = ka·Ia + f(d)·IL·[ kd (N·L) + ks (R·V)^n ]

For a source at infinity, f(d) = 1. Attenuation gives depth cues: farther objects look dimmer.

Transparency

A transparent object lets light pass through it, so objects behind it can be seen. A simple model (for a transparent surface in front of an opaque one):

I = (1 − kt)·I_surface + kt·I_background

where kt is the transmission coefficient (0 = opaque, 1 = fully transparent). Surfaces are processed back to front (or by using the A-buffer). More accurate models also consider refraction using Snell's law (n1 sinθi = n2 sinθr) and are used in ray tracing: I = I_local + kr·I_reflected + kt·I_transmitted.

✓ Answer checked by Claude Opus 5.5 (high effort)

All Computer Graphics chapter 8 questions →