diff options
| author | 3gg <3gg@shellblade.net> | 2025-11-02 18:18:56 -0800 |
|---|---|---|
| committer | 3gg <3gg@shellblade.net> | 2025-11-02 18:18:56 -0800 |
| commit | 0dc3a9df980630b671bbc5df69503c2e72dcf004 (patch) | |
| tree | 1b46c45ecf8842f8aa3d24c542f28719452f8a46 /src/scene/light_impl.h | |
| parent | 3e559ab467857e49941d08b91873ceaa6d1f9d8d (diff) | |
Consolidate scene data structures
Diffstat (limited to 'src/scene/light_impl.h')
| -rw-r--r-- | src/scene/light_impl.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/scene/light_impl.h b/src/scene/light_impl.h new file mode 100644 index 0000000..3191a50 --- /dev/null +++ b/src/scene/light_impl.h | |||
| @@ -0,0 +1,20 @@ | |||
| 1 | #pragma once | ||
| 2 | |||
| 3 | #include <gfx/scene.h> | ||
| 4 | |||
| 5 | /// An environment light. | ||
| 6 | typedef struct EnvironmentLight { | ||
| 7 | const Texture* environment_map; | ||
| 8 | const Texture* irradiance_map; // Renderer implementation. | ||
| 9 | const Texture* prefiltered_environment_map; // Renderer implementation. | ||
| 10 | int max_reflection_lod; // Mandatory when prefiltered_environment_map is | ||
| 11 | // given. | ||
| 12 | } EnvironmentLight; | ||
| 13 | |||
| 14 | /// A scene light. | ||
| 15 | typedef struct Light { | ||
| 16 | LightType type; | ||
| 17 | union { | ||
| 18 | EnvironmentLight environment; | ||
| 19 | }; | ||
| 20 | } Light; | ||
