This is the documentation for Enlighten.
class Enlighten RectangleLight CachedData
class Enlighten::RectangleLight::CachedData
Cached data for rectangle light.
Variables
Name | Description |
|---|---|
Geo::v128 m_Colour | Colour. |
Geo::v128 m_Direction | Forward direction. |
bool m_HasChanged | Whether the light has changed since it was last given to the extended direct lighting api. |
Geo::u32 m_HasVisibilityData | Has visibility data? |
float m_Height | Height. |
const eLightType m_LightType | Type of input light corresponding to an eLightType enum value. |
Geo::u64 m_Padding | Unused (this class is usually extended by one that starts with multiple v128s) |
Geo::u32 m_PaddingA | Unused padding. |
Geo::u32 m_PaddingB | Unused padding. |
Geo::u32 m_PaddingC | Unused padding. |
Geo::v128 m_Position | Position. |
Geo::v128 m_RightDirection | Right direction. |
Geo::v128 m_UpDirection | Up direction. |
const Geo::u8 * m_VisibilityData | Visibility data. |
Geo::u64 m_VisibilityData64 | Visibility data. |
float m_Width | Width. |
Functions
Name | Description |
|---|---|
Constructor. | |
CalcEdgeContribution(Geo::v128, Geo::v128, Geo::v128, const Geo::v128 &) | Note - the 4th v128 parameter has to be passed as a reference as the vs2008 compiler can't pass more than 3 v128s as values and preserve alignment. |
Hash the light data. | |
Constructor. | |
Constructor. | |
IsIntersectingCluster(const Geo::v128 &, const Geo::v128 &, const Geo::v128 &, const Geo::v128 &) | Complex light V normalBoundingBox intersection test. |
Light v ClusterGroup Bounding box intersection test. | |
Simple Light V system BoundingBox intersection test. | |
Shades the given samples. | |
This computes the illumination on samplePos/sampleNormal from the area light description. | |
Shades the given quad. | |
Shades the given quads. |
Enlighten::RectangleLight::CachedData::CachedData
public: CachedData
(
const RectangleLight & rectangleLight,
const void * perDusterVisibility
)