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.

output_VERTEX_UVS.wgsl

Constants

pbr_types__STANDARD_MATERIAL_FLAGS_EMISSIVE_TEXTURE_BIT

#
const pbr_types__STANDARD_MATERIAL_FLAGS_EMISSIVE_TEXTURE_BIT: u32 = 2u

pbr_types__STANDARD_MATERIAL_FLAGS_UNLIT_BIT

#
const pbr_types__STANDARD_MATERIAL_FLAGS_UNLIT_BIT: u32 = 32u

pbr_types__STANDARD_MATERIAL_FLAGS_ALPHA_MODE_BLEND

#
const pbr_types__STANDARD_MATERIAL_FLAGS_ALPHA_MODE_BLEND: u32 = 256u

pbr_types__STANDARD_MATERIAL_FLAGS_TWO_COMPONENT_NORMAL_MAP

#
const pbr_types__STANDARD_MATERIAL_FLAGS_TWO_COMPONENT_NORMAL_MAP: u32 = 512u

pbr_types__STANDARD_MATERIAL_FLAGS_ALPHA_MODE_MASK

#
const pbr_types__STANDARD_MATERIAL_FLAGS_ALPHA_MODE_MASK: u32 = 128u

pbr_types__STANDARD_MATERIAL_FLAGS_DOUBLE_SIDED_BIT

#
const pbr_types__STANDARD_MATERIAL_FLAGS_DOUBLE_SIDED_BIT: u32 = 16u

pbr_types__STANDARD_MATERIAL_FLAGS_BASE_COLOR_TEXTURE_BIT

#
const pbr_types__STANDARD_MATERIAL_FLAGS_BASE_COLOR_TEXTURE_BIT: u32 = 1u

pbr_types__STANDARD_MATERIAL_FLAGS_METALLIC_ROUGHNESS_TEXTURE_BIT

#
const pbr_types__STANDARD_MATERIAL_FLAGS_METALLIC_ROUGHNESS_TEXTURE_BIT: u32 = 4u

pbr_types__STANDARD_MATERIAL_FLAGS_OCCLUSION_TEXTURE_BIT

#
const pbr_types__STANDARD_MATERIAL_FLAGS_OCCLUSION_TEXTURE_BIT: u32 = 8u

pbr_types__STANDARD_MATERIAL_FLAGS_ALPHA_MODE_OPAQUE

#
const pbr_types__STANDARD_MATERIAL_FLAGS_ALPHA_MODE_OPAQUE: u32 = 64u

pbr_types__STANDARD_MATERIAL_FLAGS_FLIP_NORMAL_MAP_Y

#
const pbr_types__STANDARD_MATERIAL_FLAGS_FLIP_NORMAL_MAP_Y: u32 = 1024u

mesh_types__MESH_FLAGS_SHADOW_RECEIVER_BIT

#
const mesh_types__MESH_FLAGS_SHADOW_RECEIVER_BIT: u32 = 1u

mesh_view_types__POINT_LIGHT_FLAGS_SPOT_LIGHT_Y_NEGATIVE

#
const mesh_view_types__POINT_LIGHT_FLAGS_SPOT_LIGHT_Y_NEGATIVE: u32 = 2u

mesh_view_types__DIRECTIONAL_LIGHT_FLAGS_SHADOWS_ENABLED_BIT

#
const mesh_view_types__DIRECTIONAL_LIGHT_FLAGS_SHADOWS_ENABLED_BIT: u32 = 1u

mesh_view_types__POINT_LIGHT_FLAGS_SHADOWS_ENABLED_BIT

#
const mesh_view_types__POINT_LIGHT_FLAGS_SHADOWS_ENABLED_BIT: u32 = 1u

utils__PI

#
const utils__PI: f32 = 3.1415927410125732

clustered_forward__CLUSTER_COUNT_SIZE

#
const clustered_forward__CLUSTER_COUNT_SIZE: u32 = 9u

Bindings

mesh_bindings__mesh

#
@group(2)
@binding(0)
var<uniform> mesh_bindings__mesh: mesh_types__Mesh

mesh_view_bindings__view

#
@group(0)
@binding(0)
var<uniform> mesh_view_bindings__view: mesh_view_types__View

mesh_view_bindings__point_shadow_textures

#
@group(0)
@binding(2)
var mesh_view_bindings__point_shadow_textures: texture_depth_cube_array

mesh_view_bindings__directional_shadow_textures_sampler

#
@group(0)
@binding(5)
var mesh_view_bindings__directional_shadow_textures_sampler: sampler_comparison

mesh_view_bindings__point_lights

#
@group(0)
@binding(6)
var<storage> mesh_view_bindings__point_lights: mesh_view_types__PointLights

mesh_view_bindings__lights

#
@group(0)
@binding(1)
var<uniform> mesh_view_bindings__lights: mesh_view_types__Lights

mesh_view_bindings__point_shadow_textures_sampler

#
@group(0)
@binding(3)
var mesh_view_bindings__point_shadow_textures_sampler: sampler_comparison

mesh_view_bindings__directional_shadow_textures

#
@group(0)
@binding(4)
var mesh_view_bindings__directional_shadow_textures: texture_depth_2d_array

mesh_view_bindings__cluster_light_index_lists

#
@group(0)
@binding(7)
var<storage> mesh_view_bindings__cluster_light_index_lists: mesh_view_types__ClusterLightIndexLists

mesh_view_bindings__cluster_offsets_and_counts

#
@group(0)
@binding(8)
var<storage> mesh_view_bindings__cluster_offsets_and_counts: mesh_view_types__ClusterOffsetsAndCounts

pbr_bindings__occlusion_sampler

#
@group(1)
@binding(8)
var pbr_bindings__occlusion_sampler: sampler

pbr_bindings__material

#
@group(1)
@binding(0)
var<uniform> pbr_bindings__material: pbr_types__StandardMaterial

pbr_bindings__emissive_texture

#
@group(1)
@binding(3)
var pbr_bindings__emissive_texture: texture_2d<f32>

pbr_bindings__base_color_texture

#
@group(1)
@binding(1)
var pbr_bindings__base_color_texture: texture_2d<f32>

pbr_bindings__metallic_roughness_texture

#
@group(1)
@binding(5)
var pbr_bindings__metallic_roughness_texture: texture_2d<f32>

pbr_bindings__emissive_sampler

#
@group(1)
@binding(4)
var pbr_bindings__emissive_sampler: sampler

pbr_bindings__metallic_roughness_sampler

#
@group(1)
@binding(6)
var pbr_bindings__metallic_roughness_sampler: sampler

pbr_bindings__base_color_sampler

#
@group(1)
@binding(2)
var pbr_bindings__base_color_sampler: sampler

pbr_bindings__normal_map_sampler

#
@group(1)
@binding(10)
var pbr_bindings__normal_map_sampler: sampler

pbr_bindings__normal_map_texture

#
@group(1)
@binding(9)
var pbr_bindings__normal_map_texture: texture_2d<f32>

pbr_bindings__occlusion_texture

#
@group(1)
@binding(7)
var pbr_bindings__occlusion_texture: texture_2d<f32>

Structures

mesh_vertex_output__MeshVertexOutput

#
struct mesh_vertex_output__MeshVertexOutput {
@location(0)
world_position: vec4<f32> ,
@location(1)
world_normal: vec3<f32> ,
@location(2)
uv: vec2<f32> ,
}

pbr_types__StandardMaterial

#
struct pbr_types__StandardMaterial {
base_color: vec4<f32> ,
emissive: vec4<f32> ,
perceptual_roughness: f32 ,
metallic: f32 ,
reflectance: f32 ,
flags: u32 ,
alpha_cutoff: f32 ,
}

mesh_types__Mesh

#
struct mesh_types__Mesh {
model: mat4x4<f32> ,
inverse_transpose_model: mat4x4<f32> ,
flags: u32 ,
}

mesh_view_types__View

#
struct mesh_view_types__View {
view_proj: mat4x4<f32> ,
inverse_view_proj: mat4x4<f32> ,
inverse_view: mat4x4<f32> ,
projection: mat4x4<f32> ,
inverse_projection: mat4x4<f32> ,
world_position: vec3<f32> ,
width: f32 ,
height: f32 ,
}

mesh_view_types__PointLight

#
struct mesh_view_types__PointLight {
light_custom_data: vec4<f32> ,
color_inverse_square_range: vec4<f32> ,
position_radius: vec4<f32> ,
flags: u32 ,
shadow_depth_bias: f32 ,
shadow_normal_bias: f32 ,
spot_light_tan_angle: f32 ,
}

mesh_view_types__DirectionalLight

#
struct mesh_view_types__DirectionalLight {
view_projection: mat4x4<f32> ,
color: vec4<f32> ,
direction_to_light: vec3<f32> ,
flags: u32 ,
shadow_depth_bias: f32 ,
shadow_normal_bias: f32 ,
}

mesh_view_types__Lights

#
struct mesh_view_types__Lights {
ambient_color: vec4<f32> ,
cluster_dimensions: vec4<u32> ,
cluster_factors: vec4<f32> ,
n_directional_lights: u32 ,
spot_light_shadowmap_offset: i32 ,
}

mesh_view_types__PointLights

#
struct mesh_view_types__PointLights { }

mesh_view_types__ClusterLightIndexLists

#
struct mesh_view_types__ClusterLightIndexLists {
data: array<u32> ,
}

mesh_view_types__ClusterOffsetsAndCounts

#
struct mesh_view_types__ClusterOffsetsAndCounts { }

pbr_functions__PbrInput

#
struct pbr_functions__PbrInput {
occlusion: f32 ,
frag_coord: vec4<f32> ,
world_position: vec4<f32> ,
world_normal: vec3<f32> ,
is_orthographic: bool ,
}

Functions

pbr_types__standard_material_new

#
fn pbr_types__standard_material_new ()

utils__saturate

#
fn utils__saturate (
value: f32
) -> f32

utils__hsv2rgb

#
fn utils__hsv2rgb (
hue: f32
saturation: f32
value_1: f32
) -> vec3<f32>

utils__random1D

#
fn utils__random1D ( ) -> f32

lighting__getDistanceAttenuation

#
fn lighting__getDistanceAttenuation (
distanceSquare: f32
inverseRangeSquared: f32
) -> f32

lighting__D_GGX

#
fn lighting__D_GGX (
roughness: f32
NoH: f32
) -> f32

lighting__V_SmithGGXCorrelated

#
fn lighting__V_SmithGGXCorrelated (
roughness_1: f32
NoV: f32
NoL: f32
) -> f32

lighting__F_Schlick_vec

#
fn lighting__F_Schlick_vec (
f90_: f32
VoH: f32
) -> vec3<f32>

lighting__F_Schlick

#
fn lighting__F_Schlick (
f0_1: f32
f90_1: f32
VoH_1: f32
) -> f32

lighting__fresnel

#
fn lighting__fresnel (
LoH: f32
) -> vec3<f32>

lighting__specular

#
fn lighting__specular (
roughness_2: f32
NoV_1: f32
NoL_1: f32
NoH_1: f32
LoH_1: f32
specularIntensity: f32
) -> vec3<f32>

lighting__Fd_Burley

#
fn lighting__Fd_Burley (
roughness_3: f32
NoV_2: f32
NoL_2: f32
LoH_2: f32
) -> f32

lighting__EnvBRDFApprox

#
fn lighting__EnvBRDFApprox (
perceptual_roughness_1: f32
NoV_3: f32
) -> vec3<f32>

lighting__perceptualRoughnessToRoughness

#
fn lighting__perceptualRoughnessToRoughness (
perceptualRoughness: f32
) -> f32

lighting__reinhard

#
fn lighting__reinhard ( ) -> vec3<f32>

lighting__reinhard_extended

#
fn lighting__reinhard_extended (
color_1: vec3<f32>
max_white: f32
) -> vec3<f32>

lighting__luminance

#
fn lighting__luminance ( ) -> f32

lighting__change_luminance

#
fn lighting__change_luminance (
l_out: f32
) -> vec3<f32>

lighting__reinhard_luminance

#
fn lighting__reinhard_luminance (
color_2: vec3<f32>
) -> vec3<f32>

lighting__reinhard_extended_luminance

#
fn lighting__reinhard_extended_luminance (
color_3: vec3<f32>
max_white_l: f32
) -> vec3<f32>

lighting__point_light

#
fn lighting__point_light (
world_position: vec3<f32>
roughness_4: f32
NdotV: f32
diffuseColor: vec3<f32>
) -> vec3<f32>

lighting__spot_light

#
fn lighting__spot_light (
world_position_1: vec3<f32>
roughness_5: f32
NdotV_1: f32
diffuseColor_1: vec3<f32>
) -> vec3<f32>

lighting__directional_light

#
fn lighting__directional_light (
roughness_6: f32
NdotV_2: f32
diffuseColor_2: vec3<f32>
) -> vec3<f32>

clustered_forward__view_z_to_z_slice

#
fn clustered_forward__view_z_to_z_slice (
view_z: f32
is_orthographic: bool
) -> u32

clustered_forward__fragment_cluster_index

#
fn clustered_forward__fragment_cluster_index (
frag_coord_1: vec2<f32>
view_z_1: f32
is_orthographic_1: bool
) -> u32

clustered_forward__unpack_offset_and_counts

#
fn clustered_forward__unpack_offset_and_counts (
cluster_index: u32
) -> vec3<u32>

clustered_forward__get_light_id

#
fn clustered_forward__get_light_id (
index: u32
) -> u32

clustered_forward__cluster_debug_visualization

#
fn clustered_forward__cluster_debug_visualization (
output_color_1: vec4<f32>
view_z_2: f32
is_orthographic_2: bool
offset_and_counts: vec3<u32>
cluster_index_1: u32
) -> vec4<f32>

shadows__fetch_point_shadow

#
fn shadows__fetch_point_shadow (
light_id: u32
frag_position: vec4<f32>
surface_normal: vec3<f32>
) -> f32

shadows__fetch_spot_shadow

#
fn shadows__fetch_spot_shadow (
light_id_1: u32
frag_position_1: vec4<f32>
surface_normal_1: vec3<f32>
) -> f32

shadows__fetch_directional_shadow

#
fn shadows__fetch_directional_shadow (
light_id_2: u32
frag_position_2: vec4<f32>
surface_normal_2: vec3<f32>
) -> f32

pbr_functions__prepare_normal

#
fn pbr_functions__prepare_normal (
standard_material_flags: u32
world_normal: vec3<f32>
is_front_1: bool
) -> vec3<f32>

pbr_functions__calculate_view

#
fn pbr_functions__calculate_view (
world_position_2: vec4<f32>
is_orthographic_3: bool
) -> vec3<f32>

pbr_functions__pbr_input_new

#
fn pbr_functions__pbr_input_new ()

pbr_functions__pbr

#
fn pbr_functions__pbr ( ) -> vec4<f32>

pbr_functions__tone_mapping

#
fn pbr_functions__tone_mapping ( ) -> vec4<f32>

fragment

#
@fragment
Calculates the final color of each pixel on the screen
fn fragment (
@builtin(front_facing)
is_front: bool
@builtin(position)
frag_coord: vec4<f32>
) ->
@location(0)
vec4<f32>