Constants
Bindings
@group(0)
@binding(0)
var<uniform>
view:
View
@group(0)
@binding(1)
var<uniform>
lights:
Lights
@if(NO_CUBE_ARRAY_TEXTURES_SUPPORT)
@group(0)
@binding(2)
var
point_shadow_textures:
texture_depth_cube
@if(PCSS_SAMPLERS_AVAILABLE)
@group(0)
@binding(4)
var
point_shadow_textures_linear_sampler:
sampler
@if(NO_ARRAY_TEXTURES_SUPPORT)
@group(0)
@binding(5)
var
directional_shadow_textures:
texture_depth_2d
@if(PCSS_SAMPLERS_AVAILABLE)
@group(0)
@binding(7)
var
directional_shadow_textures_linear_sampler:
sampler
@group(0)
@binding(8)
var<storage>
clustered_lights:
ClusteredLights
@group(0)
@binding(8)
var<uniform>
clustered_lights:
ClusteredLights
@group(0)
@binding(9)
var<storage>
clusterable_object_index_lists:
ClusterableObjectIndexLists
@group(0)
@binding(9)
var<uniform>
clusterable_object_index_lists:
ClusterableObjectIndexLists
@group(0)
@binding(10)
var<storage>
cluster_offsets_and_counts:
ClusterOffsetsAndCounts
@group(0)
@binding(10)
var<uniform>
cluster_offsets_and_counts:
ClusterOffsetsAndCounts
@group(0)
@binding(11)
var<uniform>
globals:
Globals
@group(0)
@binding(12)
var<uniform>
light_probes:
LightProbes
@if(DISTANCE_FOG)
@group(0)
@binding(13)
var<uniform>
fog:
Fog
@if(SCREEN_SPACE_REFLECTIONS)
@group(0)
@binding(15)
var<uniform>
ssr_settings:
ScreenSpaceReflectionsSettings
@if(CONTACT_SHADOWS)
@group(0)
@binding(16)
var<uniform>
contact_shadows_settings:
ContactShadowsSettings
@if(SCREEN_SPACE_AMBIENT_OCCLUSION)
@group(0)
@binding(17)
var
screen_space_ambient_occlusion_texture:
texture_2d<f32>
@if(MULTISAMPLED && DEPTH_PREPASS)
@group(0)
@binding(20)
var
depth_prepass_texture:
texture_depth_multisampled_2d
@if(!MULTISAMPLED && DEPTH_PREPASS)
@group(0)
@binding(20)
var
depth_prepass_texture:
texture_depth_2d
@if(MULTISAMPLED && NORMAL_PREPASS)
@group(0)
@binding(21)
var
normal_prepass_texture:
texture_multisampled_2d<f32>
@if(!MULTISAMPLED && NORMAL_PREPASS)
@group(0)
@binding(21)
var
normal_prepass_texture:
texture_2d<f32>
@if(MULTISAMPLED && MOTION_VECTOR_PREPASS)
@group(0)
@binding(22)
var
motion_vector_prepass_texture:
texture_multisampled_2d<f32>
@if(!MULTISAMPLED && MOTION_VECTOR_PREPASS)
@group(0)
@binding(22)
var
motion_vector_prepass_texture:
texture_2d<f32>
@group(0)
@binding(26)
var<uniform>
oit_settings:
OrderIndependentTransparencySettings
@group(0)
@binding(28)
var<storage, read_write>
oit_nodes:
OitFragmentNode>
@group(0)
@binding(33)
var<storage>
atmosphere:
Atmosphere
@if(IRRADIANCE_VOLUME && IRRADIANCE_VOLUMES_ARE_USABLE && MULTIPLE_LIGHT_PROBES_IN_ARRAY)
@group(1)
@binding(3)
var
irradiance_volumes:
binding_array<texture_3d<f32>, 8u>
@if(IRRADIANCE_VOLUME && IRRADIANCE_VOLUMES_ARE_USABLE && !MULTIPLE_LIGHT_PROBES_IN_ARRAY)
@group(1)
@binding(3)
var
irradiance_volume:
texture_3d<f32>
@if(IRRADIANCE_VOLUME && IRRADIANCE_VOLUMES_ARE_USABLE)
@group(1)
@binding(4)
var
irradiance_volume_sampler:
sampler
@group(1)
@binding(5)
var<storage>
clustered_decals:
ClusteredDecals