I'm currently reading some books on radiometry. They mention that radiance is constant along a ray. It doesn't change with distance. However, I've seen some raytracer and they put the 1/r² factor when they deal with point sources. I don't get why. I didn't find a great explanation on the Internet.

  • $\begingroup$ In short, the number of photos you'll encounter drops as you get farther from a point light source. You'll encounter 1/(distance^2) in fact (; $\endgroup$
    – Alan Wolfe
    May 12 '16 at 3:28
  • $\begingroup$ By photos I meant photons by the way $\endgroup$
    – Alan Wolfe
    May 13 '16 at 4:21

The concept of a point source is an approximation. Physically, light sources are extended objects and emit light from every point on their surface; but when you're far enough away (i.e. the distance to the source is large compared to its size) it's useful to approximate it as a point source.

You can get the $1/r^2$ law out of it as follows. Imagine a spherical area light with some radius $r_\text{light}$, and you're looking at it from a distance $r$ away. Then, we can approximate the solid angle that it subtends from your point of view as the area of a circle of radius $r_\text{light}/r$ (just using similar triangles). This area will be $\pi (r_\text{light}/r)^2$, so it's proportional to $1/r^2$.

Note that this approximation becomes exact in the limit $r_\text{light}/r \to 0$, i.e. when the light source is very far away or very small. It breaks down if the source is too large or too close.

If the source emits a constant radiance from every point on its surface, then when you integrate over solid angle in the rendering equation, you'll get a total irradiance proportional to $1/r^2$. In order to approximate it as a point source in a renderer, we skip the integration and just add an irradiance proportional to $1/r^2$ directly.

  • $\begingroup$ I'd really like to absorb this answer but I'm getting stuck on the bit about approximating the solid angle as an area of circle of radius $r_\text{light}/r$ using similar triangles. I don't get the denominator, and I can't see how similar triangles come into play. Any help appreciated. $\endgroup$
    – PeteUK
    Oct 5 '16 at 21:22
  • 1
    $\begingroup$ @PeteUK it comes about because you're projecting a light source that's a distance $r$ away onto the unit sphere. (The solid angle is equivalent to area on a unit sphere.) So, distances get divided by $r$. If that doesn't help, I can draw a diagram. $\endgroup$ Oct 5 '16 at 22:57

It is the inverse square law of light for a pure point light.

$E = \frac{I}{r^2}$

Where E is illuminance and I is pointance or power/flux per unit solid angle.

  • 1
    $\begingroup$ But how can I use this with the Rendering Equation which involves radiance ? $\endgroup$
    – Livetrack
    May 11 '16 at 10:36

I'll give an intuitive idea of the reason in this answer. Once this intuitive idea is grasped, it can be easier to absorb the mathematical descriptions.

Other people find it easier the other way around, so look at all the answers and see which approach works for you personally.

A spherical shell of photons

Imagine a point light source. Picture an instant where it emits a million photons spread evenly in all directions. At that instant, they are all in the same position, at the central point. A moment later, they have all moved the same distance and are now arranged in a small sphere with the point at its centre. A short time later they are still arranged in a sphere, but now a much larger sphere.

As the sphere expands it always has the same number of photons, but they are spread out over the increasing area. Each photon has the same amount of energy it had when it first left the point source, but the photons are more spread out so a given area of the sphere now has less energy due to having fewer photons.

When a photon hits a surface, it adds the same amount of energy whether it has traveled 1 metre or 100 metres. The reason the surface looks dimmer when it is further from the light source is that the photons are more spread out across that surface.

Source to eye ray tracing

If you wrote a ray tracer that started with rays being emitted from a point light source, and then followed them to see what they hit, you wouldn't need the $1/r^2$ term. Objects further from the light would naturally be hit by fewer rays due to the rays spreading out.

Eye to source ray tracing

Most ray tracers don't start the rays from the light source, as this results in calculating the paths of all the rays that never reach the eye, which is very inefficient. Instead the rays start at the eye and are traced backwards, to see what surface they came from. If the ray was then bounced from that surface in a random direction to see if it hits the point light source, the fact that the light source is a point would make the probability of hitting it zero. So instead $1/r^2$ is used to give a measure of how many rays hit the surface.

Geometry of a point source

This isn't a property of light, it is a property of a point source. Light traveling in all directions from a point forms spherical shells of photons, and the surface area of a sphere increases in proportion to the radius squared.

If you had light being emitted that was not in all directions then the rule would be different. For example, imagine a line light source instead of a point, with all the light being emitted radially (only in directions perpendicular to the line). Now the light forms cylindrical shells of photons, and the surface area of a cylinder increases in proportion to the radius, not the radius squared. Now you would use a $1/r$ term instead of a $1/r^2$ term, and an object would need to be moved significantly further from the light source before seeing a noticeable drop in brightness.

In reality, nearly every light source is equivalent to a collection of point sources - every point on an area light source emits light in all directions. Even cylindrical lights like flourescent strip lights and neon signs still emit light in all directions, so the photons form spherical shells rather than cylindrical ones. So the reduction in light level will nearly always be with $1/r^2$.


Say the point light is at $P_L$, the shading is happening at $P_S$

It's true that the radiance is constant along a shadow ray $P_L \rightarrow P_S$, but that's not the key property for solving the rendering equation at $P_S$.

The rendering equation, somewhat simplified, is: $L_o(\omega_o) = L_e(\omega_o) + \int_{\Omega} \, f_r(\omega_i, \omega_o)\, L_i(\omega_i)\, (n \cdot \omega_i) \, d \omega_i $

While $L_o$ is expressed in radiance, you are actually integrating the irradiance $L_i$ of the incoming light at $P_S$, which is expressed in $Wm^{-2}$. The incoming radiance -- call it $\hat{L}_i$ -- is in $W m^{-2} sr^{-1}$ and, while constant along the shadow ray, it is not directly relevant. The difference between $\hat{L}_i$ and $L_i$ is a $1/r^2$ term since the area of 1 $sr$ increases quadratically with distance from $P_L$ .


Thanks for your answers. That was helpfull.

This is how I understand the 1/r² term for point source (tell me if I'm wrong). Let's take the BRDF definition :

$$ L_o = \int f(\omega, \omega_o) \, dE$$

Now, we have to answer this question : How is the Irradiance E distributed ? For one point source, we have : $$ dE = \delta(\omega_i-\omega)E \, d\omega $$ The irradiance is only comming from one direction (the point source). Therfore, we can simplify the equation :

$$ L_o = \int f(\omega, \omega_o) \delta(\omega_i-\omega)E \, d\omega = f(\omega_i, \omega_o) E$$ We can use the relation between the intensity I of the point source and E $$ E = cos(\theta_i)I/r^2 $$ Finally : $$ L_o = f(\omega_i, \omega_o) cos(\theta_i)I/r^2 $$


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.