11 #ifndef BILLBOARD_RENDERING_H
12 #define BILLBOARD_RENDERING_H
58 GLuint wire_quad_vbo, GLuint wire_cube_vbo);
88 GLuint src_buffer,
int count);
void billboard_group_init(BillboardGroup *group, const SphereInstance *data, int count)
Initializes the billboard group and allocates GPU memory.
Definition: billboard_rendering.c:11
void billboard_group_draw_debug_quads(BillboardGroup *group)
Draws wireframe quads for each instance.
Definition: billboard_rendering.c:187
void billboard_group_draw_debug_fill(BillboardGroup *group)
Draws filled quads for each instance (for debug transparency).
Definition: billboard_rendering.c:177
void billboard_group_draw(BillboardGroup *group)
Executes the instanced draw call for all billboards in the group.
Definition: billboard_rendering.c:146
void billboard_group_prepare(BillboardGroup *group, GLuint quad_vbo, GLuint wire_quad_vbo, GLuint wire_cube_vbo)
Prepares the VAO by linking a shared quad VBO with internal instance data.
Definition: billboard_rendering.c:136
void billboard_group_update_from_buffer(BillboardGroup *group, GLuint src_buffer, int count)
Updates instance data on the GPU by copying from another GPU buffer (e.g. SSBO).
Definition: billboard_rendering.c:69
void billboard_group_update(BillboardGroup *group, const SphereInstance *data, int count)
Updates instance data on the GPU.
Definition: billboard_rendering.c:32
void billboard_group_draw_debug_boxes(BillboardGroup *group)
Draws wireframe boxes for each instance.
Definition: billboard_rendering.c:203
void billboard_group_cleanup(BillboardGroup *group)
Releases all GPU resources allocated for the billboard group.
Definition: billboard_rendering.c:169
Common OpenGL definitions, RAII helpers, and utilities.
Mesh-based instanced rendering for spheres.
High-level OpenGL shader management with metadata and uniform caching.
Manages a set of billboarded instances on the GPU.
Definition: billboard_rendering.h:22
GLuint vao_wire_quad
Definition: billboard_rendering.h:29
GLuint vao
Definition: billboard_rendering.h:24
GLuint instance_vbo
Definition: billboard_rendering.h:25
int instance_count
Definition: billboard_rendering.h:27
GLuint vao_wire_box
Definition: billboard_rendering.h:30
int capacity
Definition: billboard_rendering.h:28
Per-instance data sent to the shader via an instanced VBO.
Definition: instanced_rendering.h:23