blocks | Bx × By × Bz | float2 | min/max blocks |
block buffer | Bx × By × Bz | int | active/inactive (0/1) (shared with edge buffer) |
block index buffer | Nb | int | block sequential indices |
edge buffer | Nb × 128 × 7 | int | edge/isosurface intersections(0/1)) |
cell buffer | Nb × 128 × 6 | int | 4-bit value for cells |
edge index buffer | Nb × 128 × 7 | int | edge indices (incremented by 1 if intersected with the isosurface) (shared with cell index buffer) |
cell index buffer | Nb × 128 × 6 | int | before serialization: intersections (0/1/2) after serialization: cell indices (shared with edge index buffer) |
intersection buffer | Ne | int3 | edge indices |
triangle buffer | Nf | int3 | triangle indices |
vertex buffer | Ne | float3 | isosurface vertex buffer (shared with intersection buffer) |
normal buffer | Ne | float3 | isosurface normal vector buffer |
index buffer | Nf | int3 | isosurface index buffer (shared with triangles buffer) |