7#include "core/reflect.h"
10namespace Vkm::Engine {
33 uint32_t resolutionX = 8;
34 uint32_t resolutionY = 4;
35 uint32_t resolutionZ = 8;
63 const auto axis = [](uint32_t asked) {
66 return glm::uvec3(axis(volume.resolutionX), axis(volume.resolutionY), axis(volume.resolutionZ));
78EntityId findIrradianceVolume(
const Scene& scene);
Central registry managing entities and an open set of component types.
Definition scene.h:29
Baked global illumination: a grid of irradiance probes filling a box.
Definition irradiance_volume.h:21
uint32_t bakeVersion
Bump to force a re-bake.
Definition irradiance_volume.h:52
static constexpr uint32_t MAX_RESOLUTION
Most probes one axis may carry.
Definition irradiance_volume.h:28
static glm::uvec3 clampedResolution(const IrradianceVolume &volume)
The probe grid size every reader walks; loading does not clamp, so readers clamp here.
Definition irradiance_volume.h:62
float intensity
Linear-HDR multiplier.
Definition irradiance_volume.h:37
glm::vec3 halfExtents
World units.
Definition irradiance_volume.h:30
float blendDistance
How far inside the box its light fades in, in metres.
Definition irradiance_volume.h:45