Function specialize_shadows

Source
pub fn specialize_shadows<M: Material>(
    prepass_pipeline: Res<'_, PrepassPipeline<M>>,
    (render_meshes, render_mesh_instances, render_materials, render_material_instances, material_bind_group_allocator): (Res<'_, RenderAssets<RenderMesh>>, Res<'_, RenderMeshInstances>, Res<'_, RenderAssets<PreparedMaterial<M>>>, Res<'_, RenderMaterialInstances>, Res<'_, MaterialBindGroupAllocator<M>>),
    shadow_render_phases: Res<'_, ViewBinnedRenderPhases<Shadow>>,
    pipelines: ResMut<'_, SpecializedMeshPipelines<PrepassPipeline<M>>>,
    pipeline_cache: Res<'_, PipelineCache>,
    render_lightmaps: Res<'_, RenderLightmaps>,
    view_lights: Query<'_, '_, (Entity, &ViewLightEntities), With<ExtractedView>>,
    view_light_entities: Query<'_, '_, (&LightEntity, &ExtractedView)>,
    point_light_entities: Query<'_, '_, &RenderCubemapVisibleEntities, With<ExtractedPointLight>>,
    directional_light_entities: Query<'_, '_, &RenderCascadesVisibleEntities, With<ExtractedDirectionalLight>>,
    spot_light_entities: Query<'_, '_, &RenderVisibleMeshEntities, With<ExtractedPointLight>>,
    light_key_cache: Res<'_, LightKeyCache>,
    specialized_material_pipeline_cache: ResMut<'_, SpecializedShadowMaterialPipelineCache<M>>,
    light_specialization_ticks: Res<'_, LightSpecializationTicks>,
    entity_specialization_ticks: Res<'_, EntitySpecializationTicks<M>>,
    ticks: SystemChangeTick,
)
where M::Data: PartialEq + Eq + Hash + Clone,