#include <lightshaders/UberLight.h>
Inheritance diagram for UberLight:

Public Member Functions | |
| UberLight (float width, float height, float wedge, float hedge, float cuton, float cutoff, float nearedge, float faredge, float nearfarbound, float roundness, float falloff, const rgb &intensity, const Vector3 &location, const Matrix &object2light) | |
| void | estimateRadiance (const HitRecord &rec, Context &context, Vector3 &w_in, double &distance, rgb &radiance) const |
For more information on the UberLight see: "Lighting Controls for Computer Cinematography", Barzel, JGT 97. The shader code is based on an sl shader by Larry Gritz.
|
||||||||||||||||||||||||
|
Estimate the radiance this light deposits towards a point in the scene. The light should not attempt an intersection with the scene to determine if an occlusion exists. Occlusion testing can be performed by the caller with the retured 'w_in' and 'distance'. Singular light sources, such as point lights, would only implement this function and allow the caller to test for occlusion. LightShaders intended for area lights may also implement this function as it may allow for importance sampling of luminaires based on estimated radiance.
Reimplemented from LightShader. |
1.4.3