$darkmode
Suckless OGL 1.0.0
A lean, high-performance C11 PBR Renderer
include Directory Reference

Files

file  action_notifier.h [code]
 Temporary on-screen notification system for user actions.
 
file  adaptive_sampler.h [code]
 Adaptive sampling utility for performance metrics.
 
file  app.h [code]
 
file  app_binding.h [code]
 
file  app_input.h [code]
 User input orchestration and application state toggles.
 
file  app_input_state.h [code]
 Camera, gamepad, key-bindings, and input smoothing sub-struct.
 
file  app_metrics.h [code]
 
file  app_profiling.h [code]
 Profiling, metrics, and performance monitoring sub-struct.
 
file  app_settings.h [code]
 Global application constants, configuration macros, and default values.
 
file  app_ui.h [code]
 UI rendering module for the application.
 
file  app_ui_layout.h [code]
 Private UI layout constants, keyboard and gamepad layout data.
 
file  app_window.h [code]
 
file  async_loader.h [code]
 Threaded asynchronous file loader for heavy assets (HDR, textures).
 
file  billboard_rendering.h [code]
 View-aligned quad rendering (billboarding) for optimized sphere drawing.
 
file  billboard_sorting.h [code]
 Back-to-front sorting for transparent geometry.
 
file  camera.h [code]
 First-person camera module with realistic physics and head-bobbing.
 
file  camera_input.h [code]
 Input handling adapter for the Camera system.
 
file  cli.h [code]
 Command-line interface and argument parsing.
 
file  dvec3.h [code]
 Double-precision 3D vector helpers for physics simulation.
 
file  effect_benchmark.h [code]
 Automated A/B GPU cost measurement for individual postprocess effects.
 
file  env_manager.h [code]
 Environment and IBL management module.
 
file  fps.h [code]
 
file  gamepad_context.h [code]
 Decoupling seam between gamepad input and camera internals.
 
file  gamepad_input.h [code]
 Gamepad/controller input adapter for camera control.
 
file  gl_common.h [code]
 Common OpenGL definitions, RAII helpers, and utilities.
 
file  gl_debug.h [code]
 
file  gpu_profiler.h [code]
 
file  gpu_profiler_ui.h [code]
 
file  gpu_profiler_ui_layout.h [code]
 Private UI layout constants for the GPU profiler overlay.
 
file  gpu_usage.h [code]
 
file  ibl_coordinator.h [code]
 Coordinator for progressive Image-Based Lighting (IBL) generation.
 
file  icosphere.h [code]
 Procedural icosphere geometry generation.
 
file  instanced_rendering.h [code]
 Mesh-based instanced rendering for spheres.
 
file  io.h [code]
 Centralized secure file loading utilities.
 
file  light_probes.h [code]
 
file  log.h [code]
 Thread-safe logging utility with timestamps and severity levels.
 
file  main.h [code]
 Entry point configuration and global constants.
 
file  material.h [code]
 PBR material definitions and management.
 
file  mem.h [code]
 
file  metric_stack.h [code]
 
file  nbody.h [code]
 N-body gravitational simulation (Velocity Verlet + Plummer softening).
 
file  pbr.h [code]
 Physically-Based Rendering (PBR) and Image-Based Lighting (IBL) utilities.
 
file  perf_mode.h [code]
 Runtime performance optimization module.
 
file  perf_timer.h [code]
 High-precision performance measurement (CPU and GPU).
 
file  postprocess.h [code]
 Public API for the post-processing pipeline.
 
file  postprocess_input.h [code]
 
file  postprocess_internal.h [code]
 PostProcess struct definition and internal helpers.
 
file  postprocess_presets.h [code]
 Extern declarations for predefined post-processing pipeline presets.
 
file  postprocess_readback.h [code]
 Async GPU readback and histogram API for post-processing.
 
file  postprocess_setters.h [code]
 Parameter setter/getter API for the post-processing pipeline.
 
file  pp_exposure_readback.h [code]
 Async GPU readback state for exposure and histogram.
 
file  pp_gpu_resources.h [code]
 GPU resource handles for the post-processing pipeline.
 
file  pp_params.h [code]
 Parameter structs and defaults for uber-shader post-processing effects.
 
file  pp_shader_state.h [code]
 Shader management state for the optimized uber-shader pipeline.
 
file  pp_ubo.h [code]
 GPU-side Uniform Buffer Object layout for the post-processing uber-shader.
 
file  profiler.h [code]
 
file  render_utils.h [code]
 Utilities for OpenGL rendering, focusing on robustness and NVIDIA compatibility.
 
file  renderer.h [code]
 
file  scene.h [code]
 
file  scene_config.h [code]
 Render configuration flags extracted from Scene.
 
file  scene_gpu_resources.h [code]
 GPU resource handles extracted from Scene to reduce fan-out.
 
file  scene_internal.h [code]
 Internal declarations shared across scene_*.c translation units.
 
file  scene_lighting.h [code]
 IBL, probes, and materials sub-struct extracted from Scene.
 
file  scene_shaders.h [code]
 Shader pointers and uniform caches extracted from Scene.
 
file  scene_simulation.h [code]
 N-body simulation sub-struct extracted from Scene.
 
file  scene_uniforms.h [code]
 Shader uniform cache structs and GPU UBO layouts for scene rendering.
 
file  scene_visuals.h [code]
 Visual effects sub-struct extracted from Scene.
 
file  sh_math.h [code]
 
file  shader.h [code]
 High-level OpenGL shader management with metadata and uniform caching.
 
file  shockwave.h [code]
 Visual shockwave effect for N-body confinement boundary impacts.
 
file  simd_utils.h [code]
 
file  skybox.h [code]
 Infinite-distance background rendering (fullscreen quad approach).
 
file  sphere_types.h [code]
 Pure-data type for per-instance sphere attributes.
 
file  ssbo_rendering.h [code]
 Buffer-backed instancing for ultra-large-scale rendering.
 
file  texture.h [code]
 Image loading and GPU texture management.
 
file  tracy_gpu.h [code]
 
file  tracy_log.h [code]
 
file  tracy_manager.h [code]
 
file  trail_renderer.h [code]
 GPU-accelerated ribbon trail renderer for N-body simulation.
 
file  ui.h [code]
 Minimal immediate-mode User Interface (UI) library.
 
file  utils.h [code]
 Zero-overhead utility functions and RAII cleanup helpers.
 
file  window.h [code]