Shader Explorer
Advanced search tips: use spaces to require multiple terms (AND), | for alternatives (OR), wrap phrases in quotes (="a b"), =term for exact match, 'term to include, !term to exclude, ^term to match prefix, !^term to exclude prefix, .ext$ to match suffix, and !.ext$ to exclude suffix.

bindings.wgsl

Import path

Bindings

view

#
@group(0)
@binding(0)
var<uniform> view: View

globals

#
@group(0)
@binding(1)
var<uniform> globals: Globals

gaussian_uniforms

#
@group(1)
@binding(0)
var<uniform> gaussian_uniforms: GaussianUniforms

points

#

Shader defs requirments:

🟢 PACKED_F32, 🟢 READ_WRITE_POINTS

@group(2)
@binding(0)
var<storage, read_write> points: array<Gaussian>

points

#

Shader defs requirments:

🟢 PACKED_F32, 🔴 READ_WRITE_POINTS

@group(2)
@binding(0)
var<storage, read> points: array<Gaussian>

position_visibility

#

Shader defs requirments:

🟢 PLANAR_F32, 🟢 READ_WRITE_POINTS

@group(2)
@binding(0)
var<storage, read_write> position_visibility: array<vec4<f32>>

position_visibility

#

Shader defs requirments:

🟢 PLANAR_F32, 🔴 READ_WRITE_POINTS

@group(2)
@binding(0)
var<storage, read> position_visibility: array<vec4<f32>>

spherical_harmonics

#

Shader defs requirments:

🟢 PLANAR_F32

@group(2)
@binding(1)
var<storage, read> spherical_harmonics: f32

covariance_3d_opacity

#

Shader defs requirments:

🟢 PLANAR_F32, 🟢 PRECOMPUTE_COVARIANCE_3D

@group(2)
@binding(2)
var<storage, read> covariance_3d_opacity: array<array<f32, 8>>

rotation

#

Shader defs requirments:

🟢 PLANAR_F32, 🔴 PRECOMPUTE_COVARIANCE_3D

@group(2)
@binding(2)
var<storage, read> rotation: array<vec4<f32>>

scale_opacity

#

Shader defs requirments:

🟢 PLANAR_F32, 🔴 PRECOMPUTE_COVARIANCE_3D

@group(2)
@binding(3)
var<storage, read> scale_opacity: array<vec4<f32>>

position_visibility

#

Shader defs requirments:

🟢 PLANAR_F16, 🟢 READ_WRITE_POINTS

@group(2)
@binding(0)
var<storage, read_write> position_visibility: array<vec4<f32>>

position_visibility

#

Shader defs requirments:

🟢 PLANAR_F16, 🔴 READ_WRITE_POINTS

@group(2)
@binding(0)
var<storage, read> position_visibility: array<vec4<f32>>

spherical_harmonics

#

Shader defs requirments:

🟢 PLANAR_F16

@group(2)
@binding(1)
var<storage, read> spherical_harmonics: u32

covariance_3d_opacity

#

Shader defs requirments:

🟢 PLANAR_F16, 🟢 PRECOMPUTE_COVARIANCE_3D

@group(2)
@binding(2)
var<storage, read> covariance_3d_opacity: array<vec4<u32>>

rotation_scale_opacity

#

Shader defs requirments:

🟢 PLANAR_F16, 🔴 PRECOMPUTE_COVARIANCE_3D

@group(2)
@binding(2)
var<storage, read> rotation_scale_opacity: array<vec4<u32>>

position_visibility

#

Shader defs requirments:

🟢 PLANAR_TEXTURE_F16

@group(2)
@binding(0)
var position_visibility: texture_2d<f32>

spherical_harmonics

#

Shader defs requirments:

🟢 PLANAR_TEXTURE_F16

@group(2)
@binding(1)
var spherical_harmonics: texture_2d<u32>

spherical_harmonics

#

Shader defs requirments:

🔴 PLANAR_TEXTURE_F16

@group(2)
@binding(1)
var spherical_harmonics: texture_2d_array<u32>

covariance_3d_opacity

#

Shader defs requirments:

🟢 PRECOMPUTE_COVARIANCE_3D

@group(2)
@binding(2)
var covariance_3d_opacity: texture_2d<u32>

rotation_scale_opacity

#

Shader defs requirments:

🔴 PRECOMPUTE_COVARIANCE_3D

@group(2)
@binding(2)
var rotation_scale_opacity: texture_2d<u32>

position_visibility

#

Shader defs requirments:

🟢 PLANAR_TEXTURE_F32

@group(2)
@binding(0)
var position_visibility: texture_2d<f32>

spherical_harmonics

#

Shader defs requirments:

🟢 PLANAR_TEXTURE_F32

@group(2)
@binding(1)
var spherical_harmonics: texture_2d<f32>

spherical_harmonics

#

Shader defs requirments:

🔴 PLANAR_TEXTURE_F32

@group(2)
@binding(1)
var spherical_harmonics: texture_2d_array<f32>

rotation_scale_opacity

#
@group(2)
@binding(2)
var rotation_scale_opacity: texture_2d<f32>

Structures

GaussianUniforms

#
struct GaussianUniforms {
transform: mat4x4<f32> ,
global_opacity: f32 ,
global_scale: f32 ,
count: u32 ,
count_root_ceil: u32 ,
}

Gaussian

#
struct Gaussian {
@location(0)
rotation: vec4<f32> , 🟢 PACKED_F32
@location(1)
position_visibility: vec4<f32> , 🟢 PACKED_F32
@location(2)
scale_opacity: vec4<f32> , 🟢 PACKED_F32
sh: array , 🟢 PACKED_F32
}

DrawIndirect

#
struct DrawIndirect {
vertex_count: u32 ,
instance_count: atomic<u32> ,
base_vertex: u32 ,
base_instance: u32 ,
}

Entry

#
struct Entry {
key: u32 ,
value: u32 ,
}