aboutsummaryrefslogtreecommitdiff
path: root/include/gfx/util/ibl.h
diff options
context:
space:
mode:
author3gg <3gg@shellblade.net>2025-06-27 10:18:39 -0700
committer3gg <3gg@shellblade.net>2025-06-27 10:18:39 -0700
commitbd57f345ed9dbed1d81683e48199626de2ea9044 (patch)
tree4221f2f2a7ad2244d2e93052bd68187ec91b8ea9 /include/gfx/util/ibl.h
parent9a82ce0083437a4f9f58108b2c23b957d2249ad8 (diff)
Restructure projectHEADmain
Diffstat (limited to 'include/gfx/util/ibl.h')
-rw-r--r--include/gfx/util/ibl.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/include/gfx/util/ibl.h b/include/gfx/util/ibl.h
new file mode 100644
index 0000000..6e39180
--- /dev/null
+++ b/include/gfx/util/ibl.h
@@ -0,0 +1,25 @@
1/// Functions for image-based lighting.
2#pragma once
3
4typedef struct IBL IBL;
5
6typedef struct GfxCore GfxCore;
7typedef struct Texture Texture;
8
9/// Create an environment map filterer for IBL.
10IBL* gfx_make_ibl(GfxCore*);
11
12/// Destroy the environment map filterer.
13void gfx_destroy_ibl(GfxCore*, IBL**);
14
15/// Create a BRDF integration map for IBL.
16Texture* gfx_make_brdf_integration_map(IBL*, GfxCore*, int width, int height);
17
18/// Create an irradiance map (cubemap) from an environment map for IBL.
19Texture* gfx_make_irradiance_map(
20 IBL*, GfxCore*, const Texture* environment_map, int width, int height);
21
22/// Create a prefiltered environment map (cubemap) for IBL.
23Texture* gfx_make_prefiltered_environment_map(
24 IBL*, GfxCore*, const Texture* environment_map, int width, int height,
25 int* max_mip_level);