Files
test/intern/cycles/util
Lukas Stockner fbc770d58b Cycles: Fallback to area PDF when spherical rectangles are too small
This fixes #69535 and #98930.

We use a equi-solid-angle sampling algorithm for rectangular area lights,
but it is not particularly robust for small area lights (either small
in general and/or small because it's being viewed from grazing angles).

The actual sampling part is fine since it just gets clamped into the
valid area anyways, and the difference isn't notable for small lights.

However, we also need to compute the solid angle to get the sampling PDF,
and that computation is quite sensitive to numerical issues for small
values.

Therefore, this commit adds a fallback path for small values, which instead
uses the classic equi-area sampling PDF term times the area-to-solid-angle
Jacobian term. This approximation assumes that all points on the light have
the same distance and angle to the sampling point, which is of course not
strictly the case, but it's close enough for small area lights and better
than failing altogether.

Pull Request: https://projects.blender.org/blender/blender/pulls/122323
2024-06-04 01:55:26 +02:00
..
2023-09-24 14:52:38 +10:00
2024-04-01 16:47:57 +11:00
2024-03-06 16:14:34 +01:00
2024-02-02 10:48:22 +11:00
2024-01-29 01:03:47 +01:00
2023-09-24 14:52:38 +10:00
2024-01-03 13:38:14 +01:00
2024-03-06 16:14:34 +01:00
2024-03-06 16:14:34 +01:00
2024-04-01 16:47:57 +11:00