Search across packages, versions, files, declarations, and comments. Use multiple terms to narrow results (AND), and add @vertex, @fragment, or @compute to filter by shader stage.

Structures

ScreenAabb

#
struct ScreenAabb {
min: vec3<f32> ,
max: vec3<f32> ,
}

Functions

lod_error_is_imperceptible

#
fn lod_error_is_imperceptible (
lod_sphere: vec4<f32>
, 
simplification_error: f32
, 
instance_id: u32
) -> bool

normalize_plane

#
fn normalize_plane (
p: vec4<f32>
) -> vec4<f32>

aabb_in_frustum

#

min8

#
fn min8 (
a: vec3<f32>
, 
b: vec3<f32>
, 
c: vec3<f32>
, 
d: vec3<f32>
, 
e: vec3<f32>
, 
f: vec3<f32>
, 
g: vec3<f32>
, 
h: vec3<f32>
) -> vec3<f32>

max8

#
fn max8 (
a: vec3<f32>
, 
b: vec3<f32>
, 
c: vec3<f32>
, 
d: vec3<f32>
, 
e: vec3<f32>
, 
f: vec3<f32>
, 
g: vec3<f32>
, 
h: vec3<f32>
) -> vec3<f32>

min8_4

#
fn min8_4 (
a: vec4<f32>
, 
b: vec4<f32>
, 
c: vec4<f32>
, 
d: vec4<f32>
, 
e: vec4<f32>
, 
f: vec4<f32>
, 
g: vec4<f32>
, 
h: vec4<f32>
) -> vec4<f32>

project_aabb

#
fn project_aabb (
clip_from_local: mat4x4<f32>
, 
near: f32
, 
aabb: MeshletAabb
, 
out: ptr<function, ScreenAabb>
) -> bool

sample_hzb

#
fn sample_hzb (
smin: vec2<u32>
, 
smax: vec2<u32>
, 
mip: i32
) -> f32

sample_hzb_row

#
fn sample_hzb_row (
sx: vec4<u32>
, 
sy: u32
, 
mip: i32
) -> f32

occlusion_cull_screen_aabb

#
fn occlusion_cull_screen_aabb (
aabb: ScreenAabb
, 
screen: vec2<f32>
) -> bool

occlusion_cull_projection

#
fn occlusion_cull_projection () -> mat4x4<f32>

occlusion_cull_clip_from_local

#
fn occlusion_cull_clip_from_local (
instance_id: u32
) -> mat4x4<f32>

should_occlusion_cull_aabb

#
fn should_occlusion_cull_aabb (
aabb: MeshletAabb
, 
instance_id: u32
) -> bool
Contents