Calculate the face/vertex light irradiance

You can simply raycast from the light source (either static or dynamic, both will work fine) - something like this (original thread, change SHOW_SUNRAYS to true to display the rays.) The precision will be just as good, if not better, compared to using shaders / screenspace calculations.

For shapes more complex than a plane, you could either interpolate linearly between vertices, pick random points on the mesh, or just cast an arbitrarily-dense spherical cone of rays in the direction of the measured target and see what % of rays hits the target.

2 Likes