66 int app_init(
App* app,
int width,
int height,
const char* title);
Temporary on-screen notification system for user actions.
@ TRACY_SCREENSHOT_WIDTH
Definition: app.h:83
@ TRACY_SCREENSHOT_HEIGHT
Definition: app.h:83
void app_run(App *app)
Enters the main application rendering and event loop.
Definition: app.c:236
void app_cleanup(App *app)
Safely releases all GPU and CPU resources held by the application.
Definition: app.c:185
int app_init(App *app, int width, int height, const char *title)
Fully initializes the application state, window, and OpenGL context.
Definition: app.c:41
struct AsyncCoordinator AsyncCoordinator
Definition: app.h:18
void app_update(App *app)
One-frame logic update (physics, timers, camera).
Definition: app.c:461
UI rendering module for the application.
Automated A/B GPU cost measurement for individual postprocess effects.
Common OpenGL definitions, RAII helpers, and utilities.
Manager for action notifications.
Definition: action_notifier.h:41
Profiling, metrics, and performance monitoring grouped together.
Definition: app_profiling.h:24
Groups GLFW window handle and all window/resize state.
Definition: app_window.h:14
The central state container for the entire application.
Definition: app.h:24
float u_roughness
Definition: app.h:51
AppUIOverlay overlay
Definition: app.h:37
int width
Definition: app.h:40
double last_frame_time
Definition: app.h:29
GLuint lum_ssbo[2]
Definition: app.h:47
EffectBenchmark effect_bench
Definition: app.h:44
int height
Definition: app.h:41
PostProcess * postprocess
Definition: app.h:27
float u_metallic
Definition: app.h:50
Scene * scene
Definition: app.h:26
AppProfiling * profiling
Definition: app.h:35
float u_ao
Definition: app.h:52
float * lum_histogram_buffer
Definition: app.h:32
double delta_time
Definition: app.h:30
AppWindow win
Definition: app.h:28
uint64_t frame_count
Definition: app.h:31
float u_exposure
Definition: app.h:53
EnvManager * env_mgr
Definition: app.h:42
AppInput * input
Definition: app.h:36
AsyncLoader * async_loader
Definition: app.h:55
ActionNotifier notifier
Definition: app.h:43
AsyncCoordinator * async_coord
Definition: app.h:57
Opaque handle to the asynchronous loader context.
Definition: async_loader.c:17
State for the automated benchmark sweep.
Definition: effect_benchmark.h:65
Encapsulates state for environment loading, transitions, and IBL.
Definition: env_manager.h:26
Main pipeline state for post-processing.
Definition: postprocess_internal.h:46
Encapsulates all 3D scene data, geometry, and rendering state.
Definition: scene.h:28