pub fn queue_shadows<M: Material>(
shadow_draw_functions: Res<'_, DrawFunctions<Shadow>>,
prepass_pipeline: Res<'_, PrepassPipeline<M>>,
render_meshes: Res<'_, RenderAssets<Mesh>>,
render_mesh_instances: ResMut<'_, RenderMeshInstances>,
render_materials: Res<'_, RenderMaterials<M>>,
render_material_instances: Res<'_, RenderMaterialInstances<M>>,
pipelines: ResMut<'_, SpecializedMeshPipelines<PrepassPipeline<M>>>,
pipeline_cache: Res<'_, PipelineCache>,
render_lightmaps: Res<'_, RenderLightmaps>,
view_lights: Query<'_, '_, (Entity, &ViewLightEntities)>,
view_light_shadow_phases: Query<'_, '_, (&LightEntity, &mut RenderPhase<Shadow>)>,
point_light_entities: Query<'_, '_, &CubemapVisibleEntities, With<ExtractedPointLight>>,
directional_light_entities: Query<'_, '_, &CascadesVisibleEntities, With<ExtractedDirectionalLight>>,
spot_light_entities: Query<'_, '_, &VisibleEntities, With<ExtractedPointLight>>
)