ludus::graphics::renderer::StaticLightingBake¶
Ludus Wiki · API overview · Browse API
Class
- Serial: Initialize, then Step until Ready, all on one thread.
- Scheduled: Submit to a caller-owned foundation::threading::JobSystem, then Poll (nonblocking) or Finish (blocking) on the owner thread that serializes that system. Preparation and coarse triangle ranges run as jobs reading one immutable prepared scene; each range writes only its own triangles. After the JobSystem::Wait lifetime fence, the owner merges range results in stable range order and encodes the charts.
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/static_lighting.hpp
#include <ludus/graphics/renderer/static_lighting.hpp>
class ludus::graphics::renderer::StaticLightingBake final
Methods¶
StaticLightingBake¶
LUDUS_INLINE ludus::graphics::renderer::StaticLightingBake::StaticLightingBake() noexcept=default
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/static_lighting.hpp
~StaticLightingBake¶
ludus::graphics::renderer::StaticLightingBake::~StaticLightingBake() noexcept
Warning
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/static_lighting.hpp
StaticLightingBake¶
ludus::graphics::renderer::StaticLightingBake::StaticLightingBake(const StaticLightingBake &)=delete
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/static_lighting.hpp
operator=¶
StaticLightingBake & ludus::graphics::renderer::StaticLightingBake::operator=(const StaticLightingBake &)=delete
Related types: StaticLightingBake
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/static_lighting.hpp
Initialize¶
rhi::RasterStatus ludus::graphics::renderer::StaticLightingBake::Initialize(const resources::SceneDefinition &scene, const StaticLightingBakeDescription &description) noexcept
Precondition
Related types: rhi::RasterStatus · StaticLightingBakeDescription · resources::SceneDefinition
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/static_lighting.hpp
Step¶
rhi::RasterStatus ludus::graphics::renderer::StaticLightingBake::Step(foundation::uint32 maxPathSamples) noexcept
Related types: foundation::uint32 · rhi::RasterStatus
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/static_lighting.hpp
GetChart¶
rhi::RasterStatus ludus::graphics::renderer::StaticLightingBake::GetChart(foundation::usize objectIndex, StaticLightingChart &outChart) const noexcept
Related types: foundation::usize · rhi::RasterStatus · StaticLightingChart
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/static_lighting.hpp
Submit¶
rhi::RasterStatus ludus::graphics::renderer::StaticLightingBake::Submit(foundation::threading::JobSystem &inoutSystem, const resources::SceneDefinition &scene, const StaticLightingBakeDescription &description, const StaticLightingScheduleDescription &schedule={}) noexcept
| Parameter | Description |
|---|---|
inoutSystem |
Initialized system with no graph in flight. It must outlive this bake; do not reinitialize it while this bake is in flight.
|
scene |
Source scene; immutable and alive until this bake is destroyed.
|
description |
Transport quality and provenance, validated as for Initialize.
|
schedule |
Range decomposition.
|
Returns
Related types: foundation::threading::JobSystem · rhi::RasterStatus · StaticLightingBakeDescription · StaticLightingScheduleDescription · resources::SceneDefinition
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/static_lighting.hpp
Poll¶
rhi::RasterStatus ludus::graphics::renderer::StaticLightingBake::Poll() noexcept
Returns
Related types: rhi::RasterStatus
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/static_lighting.hpp
Finish¶
rhi::RasterStatus ludus::graphics::renderer::StaticLightingBake::Finish() noexcept
Returns
Related types: rhi::RasterStatus
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/static_lighting.hpp
Cancel¶
void ludus::graphics::renderer::StaticLightingBake::Cancel() noexcept
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/static_lighting.hpp
GetProgress¶
void ludus::graphics::renderer::StaticLightingBake::GetProgress(StaticLightingBakeProgress &outProgress) const noexcept
| Parameter | Description |
|---|---|
outProgress |
Receives the counts; zero for an unbound bake.
|
Related types: StaticLightingBakeProgress
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/static_lighting.hpp
GetProfile¶
rhi::RasterStatus ludus::graphics::renderer::StaticLightingBake::GetProfile(StaticLightingBakeProfile &outProfile) const noexcept
Returns
Related types: rhi::RasterStatus · StaticLightingBakeProfile
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/static_lighting.hpp
GetDiagnostics¶
rhi::RasterStatus ludus::graphics::renderer::StaticLightingBake::GetDiagnostics(StaticLightingBakeDiagnostics &outDiagnostics) const noexcept
| Parameter | Description |
|---|---|
outDiagnostics |
Receives the counts on Ready; preserved otherwise.
|
Returns
Related types: rhi::RasterStatus · StaticLightingBakeDiagnostics
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/static_lighting.hpp
GetSkippedTriangleCount¶
rhi::RasterStatus ludus::graphics::renderer::StaticLightingBake::GetSkippedTriangleCount(foundation::usize objectIndex, foundation::uint32 &outSkippedTriangleCount) const noexcept
| Parameter | Description |
|---|---|
objectIndex |
Index into SceneDefinition::Objects.
|
outSkippedTriangleCount |
Receives the count on Ready; preserved otherwise.
|
Returns
Related types: foundation::usize · foundation::uint32 · rhi::RasterStatus
Declared in modules/graphics/renderer/include/ludus/graphics/renderer/static_lighting.hpp