Skip to content

ludus::graphics::renderer::TriangleAreaLightDescription

Ludus Wiki · API overview · Browse API

Struct

Finite world-space Lambertian triangle emitter; power must be resolved first.

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/lighting.hpp

#include <ludus/graphics/renderer/lighting.hpp>
struct ludus::graphics::renderer::TriangleAreaLightDescription final

Fields

PositionsWorld

ludus::foundation::StaticArray<ludus::foundation::math::Vector3, AREA_TRIANGLE_CORNERS> ludus::graphics::renderer::TriangleAreaLightDescription::PositionsWorld {}
Winding defines outward emitting normal; metres.

Related types: ludus::foundation::StaticArray · AREA_TRIANGLE_CORNERS · ludus::foundation::math::Vector3

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/lighting.hpp

Emission

ludus::foundation::math::Vector3 ludus::graphics::renderer::TriangleAreaLightDescription::Emission {}
Nonnegative RGB nits, each channel at most 10000.

Related types: ludus::foundation::math::Vector3

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/lighting.hpp

FirstSampleSourceId

ludus::foundation::uint64 ludus::graphics::renderer::TriangleAreaLightDescription::FirstSampleSourceId =
0
Nonzero base ID; consecutive IDs must fit uint64 and be unique in the final light list.

Related types: ludus::foundation::uint64

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/lighting.hpp

Range

ludus::foundation::float32 ludus::graphics::renderer::TriangleAreaLightDescription::Range = 100
Smooth transport/shadow range in metres, [.01,1e6].

Related types: ludus::foundation::float32

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/lighting.hpp

IsTwoSided

bool ludus::graphics::renderer::TriangleAreaLightDescription::IsTwoSided = false
Whether both geometric sides emit.

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/lighting.hpp

Quadrature

AreaLightQuadrature ludus::graphics::renderer::TriangleAreaLightDescription::Quadrature = AreaLightQuadrature::Centroid
Declared integration approximation.

Related types: AreaLightQuadrature

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/lighting.hpp