$darkmode
Manages the progressive IBL generation process. More...
#include <ibl_coordinator.h>
Data Fields | |
| IBLState | state |
| GLsync | lum_sync |
| int | current_mip |
| int | total_mips |
| int | width |
| int | height |
| float | threshold |
| int | current_slice |
| int | total_slices |
| GLuint | pending_hdr_tex |
| GLuint | pending_spec_tex |
| GLuint | pending_irr_tex |
| GLuint | shader_spmap |
| GLuint | shader_irmap |
| GLuint | shader_lum_pass1 |
| GLuint | shader_lum_pass2 |
| GLuint | lum_ssbo [2] |
| PBRSpecUniforms | spec_uniforms |
| PBRIrrUniforms | irr_uniforms |
| PBRLumUniforms | lum_uniforms |
| PerfTimer | global_timer |
| PerfTimer | stage_timer |
| double | stage_gpu_min |
| double | stage_gpu_max |
| double | stage_gpu_sum |
| int | stage_slice_count |
Manages the progressive IBL generation process.
| int IBLCoordinator::current_mip |
Mip level being computed.
| int IBLCoordinator::current_slice |
Cubemap face/slice being processed.
| PerfTimer IBLCoordinator::global_timer |
Benchmarking for the entire process.
| int IBLCoordinator::height |
Source texture height.
| PBRIrrUniforms IBLCoordinator::irr_uniforms |
Cached uniforms for irradiance shader.
| GLuint IBLCoordinator::lum_ssbo[2] |
SSBOs for luminance reduction.
| GLsync IBLCoordinator::lum_sync |
Sync object for luminance readback.
| PBRLumUniforms IBLCoordinator::lum_uniforms |
Cached uniforms for luminance shader.
| GLuint IBLCoordinator::pending_hdr_tex |
Source HDR texture handle.
| GLuint IBLCoordinator::pending_irr_tex |
Target irradiance map handle.
| GLuint IBLCoordinator::pending_spec_tex |
Target specular map handle.
| GLuint IBLCoordinator::shader_irmap |
Irradiance convolution compute shader.
| GLuint IBLCoordinator::shader_lum_pass1 |
Luminance reduction pass 1.
| GLuint IBLCoordinator::shader_lum_pass2 |
Luminance reduction pass 2.
| GLuint IBLCoordinator::shader_spmap |
Specular pre-filter compute shader.
| PBRSpecUniforms IBLCoordinator::spec_uniforms |
Cached uniforms for specular shader.
| double IBLCoordinator::stage_gpu_max |
Maximum GPU time across slices (ms).
| double IBLCoordinator::stage_gpu_min |
Minimum GPU time across slices (ms).
| double IBLCoordinator::stage_gpu_sum |
Accumulated GPU time across slices (ms).
| int IBLCoordinator::stage_slice_count |
Number of slices completed in stage.
| PerfTimer IBLCoordinator::stage_timer |
Wall-clock timer for the current stage.
| IBLState IBLCoordinator::state |
Current processing phase.
| float IBLCoordinator::threshold |
Radiance threshold for sampling.
| int IBLCoordinator::total_mips |
Target mip count.
| int IBLCoordinator::total_slices |
Face count (typically 6).
| int IBLCoordinator::width |
Source texture width.