$darkmode
Suckless OGL 1.0.0
A lean, high-performance C11 PBR Renderer
SceneGPUResources Struct Reference

All GPU resource handles owned by the scene. More...

#include <scene_gpu_resources.h>

Data Fields

GLuint icosphere_vao
 
GLuint icosphere_vbo
 
GLuint icosphere_nbo
 
GLuint icosphere_ebo
 
GLuint quad_vbo
 
GLuint wire_cube_vbo
 
GLuint wire_quad_vbo
 
GLuint empty_vao
 
GLuint hdr_texture
 
GLuint recycled_hdr_tex
 
GLuint spec_prefiltered_tex
 
GLuint irradiance_tex
 
GLuint brdf_lut_tex
 
GLuint dummy_black_tex
 
GLuint dummy_white_tex
 
GLuint transition_snapshot_tex
 
GLuint spmap_program
 
GLuint irmap_program
 
GLuint lum_pass1_program
 
GLuint lum_pass2_program
 
GLuint lum_ssbo [2]
 
GLuint billboard_ubo
 
void * billboard_ubo_ptr
 
GLuint bound_ibl_textures [IBL_TEXTURE_COUNT]
 
GLuint bound_sh_textures [SH_TEXTURE_COUNT]
 
GLuint bound_probe_ssbo
 

Detailed Description

All GPU resource handles owned by the scene.

Field Documentation

◆ billboard_ubo

GLuint SceneGPUResources::billboard_ubo

UBO for billboard per-frame uniforms.

◆ billboard_ubo_ptr

void* SceneGPUResources::billboard_ubo_ptr

Persistent mapped CPU pointer for UBO.

◆ bound_ibl_textures

GLuint SceneGPUResources::bound_ibl_textures[IBL_TEXTURE_COUNT]

Last IBL active.

◆ bound_probe_ssbo

GLuint SceneGPUResources::bound_probe_ssbo

Last probe SSBO bound.

◆ bound_sh_textures

GLuint SceneGPUResources::bound_sh_textures[SH_TEXTURE_COUNT]

Last SH tex bound.

◆ brdf_lut_tex

GLuint SceneGPUResources::brdf_lut_tex

Shared BRDF lookup table.

◆ dummy_black_tex

GLuint SceneGPUResources::dummy_black_tex

Safe fallback (0,0,0,1).

◆ dummy_white_tex

GLuint SceneGPUResources::dummy_white_tex

Safe fallback (1,1,1,1).

◆ empty_vao

GLuint SceneGPUResources::empty_vao

Vertex-less drawing VAO.

◆ hdr_texture

GLuint SceneGPUResources::hdr_texture

Active HDR cubemap.

◆ icosphere_ebo

GLuint SceneGPUResources::icosphere_ebo

Shared icosphere index buffer.

◆ icosphere_nbo

GLuint SceneGPUResources::icosphere_nbo

Shared icosphere normal buffer.

◆ icosphere_vao

GLuint SceneGPUResources::icosphere_vao

Shared icosphere geometry VAO.

◆ icosphere_vbo

GLuint SceneGPUResources::icosphere_vbo

Shared icosphere vertex buffer.

◆ irmap_program

GLuint SceneGPUResources::irmap_program

Internal IBL irradiance shader.

◆ irradiance_tex

GLuint SceneGPUResources::irradiance_tex

Active Irradiance map.

◆ lum_pass1_program

GLuint SceneGPUResources::lum_pass1_program

Luminance downsample pass.

◆ lum_pass2_program

GLuint SceneGPUResources::lum_pass2_program

Mean luminance compute pass.

◆ lum_ssbo

GLuint SceneGPUResources::lum_ssbo[2]

Double-buffered storage for luminance.

◆ quad_vbo

GLuint SceneGPUResources::quad_vbo

Shared full-screen quad (FSQ).

◆ recycled_hdr_tex

GLuint SceneGPUResources::recycled_hdr_tex

Recycled texture for next load.

◆ spec_prefiltered_tex

GLuint SceneGPUResources::spec_prefiltered_tex

Active Specular map.

◆ spmap_program

GLuint SceneGPUResources::spmap_program

Internal IBL specular shader.

◆ transition_snapshot_tex

GLuint SceneGPUResources::transition_snapshot_tex

For crossfade mode.

◆ wire_cube_vbo

GLuint SceneGPUResources::wire_cube_vbo

Shared wireframe cube.

◆ wire_quad_vbo

GLuint SceneGPUResources::wire_quad_vbo

Shared wireframe quad.


The documentation for this struct was generated from the following file: