summaryrefslogtreecommitdiff
path: root/assets/common/shaders/common_uniforms.wgsl
blob: 1ab893958a191912a12059f031e29477a578c004 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
struct CommonUniforms {
    resolution: vec2<f32>,      // Screen dimensions
    aspect_ratio: f32,          // Width/height ratio
    time: f32,                  // Physical time in seconds (unaffected by tempo)
    beat_time: f32,             // Musical time in beats (absolute, tempo-scaled)
    beat_phase: f32,            // Fractional beat (0.0-1.0 within current beat)
    audio_intensity: f32,       // Audio peak for beat sync
    _pad: f32,                  // Padding
};
struct GlobalUniforms {
    view_proj: mat4x4<f32>,
    inv_view_proj: mat4x4<f32>,
    camera_pos_time: vec4<f32>,
    params: vec4<f32>,
    resolution: vec2<f32>,
};
struct ObjectData {
    model: mat4x4<f32>,
    inv_model: mat4x4<f32>,
    color: vec4<f32>,
    params: vec4<f32>,
};
struct ObjectsBuffer {
    objects: array<ObjectData>,
};