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

Reusable memory context for sorting operations. More...

#include <sphere_sorting.h>

Collaboration diagram for SphereSorter:
[legend]

Data Fields

GLuint compute_program
 
GLuint instance_ssbo
 
GLuint index_ssbo
 
GLuint sorted_instance_ssbo
 
GLint loc_stage
 
GLint loc_count
 
GLint loc_count_pot
 
GLint loc_cam
 
GLint loc_j
 
GLint loc_k
 
SphereSortEntryentries
 
SphereSortEntryentries_aux
 
SphereInstancetemp_instances
 
int ssbo_capacity
 
int cpu_capacity
 
int min_capacity
 

Detailed Description

Reusable memory context for sorting operations.

Field Documentation

◆ compute_program

GLuint SphereSorter::compute_program

Compute shader for bitonic sort.

◆ cpu_capacity

int SphereSorter::cpu_capacity

Current allocated size of CPU scratchpads.

◆ entries

SphereSortEntry* SphereSorter::entries

Scratchpad for CPU sorting.

◆ entries_aux

SphereSortEntry* SphereSorter::entries_aux

Aux scratchpad for Radix Sort.

◆ index_ssbo

GLuint SphereSorter::index_ssbo

SSBO for sorting proxy indices.

◆ instance_ssbo

GLuint SphereSorter::instance_ssbo

SSBO for input/reordered instances.

◆ loc_cam

GLint SphereSorter::loc_cam

u_cam_pos uniform.

◆ loc_count

GLint SphereSorter::loc_count

u_count uniform.

◆ loc_count_pot

GLint SphereSorter::loc_count_pot

u_count_pot uniform.

◆ loc_j

GLint SphereSorter::loc_j

u_j uniform.

◆ loc_k

GLint SphereSorter::loc_k

u_k uniform.

◆ loc_stage

GLint SphereSorter::loc_stage

u_stage uniform.

◆ min_capacity

int SphereSorter::min_capacity

Minimum capacity to maintain.

◆ sorted_instance_ssbo

GLuint SphereSorter::sorted_instance_ssbo

SSBO for permutation result.

◆ ssbo_capacity

int SphereSorter::ssbo_capacity

Current allocated size of SSBOs (GPU).

◆ temp_instances

SphereInstance* SphereSorter::temp_instances

Scratchpad for reordering.


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