pub fn queue_prepass_material_meshes<M: Material>(
opaque_draw_functions: Res<'_, DrawFunctions<Opaque3dPrepass>>,
alpha_mask_draw_functions: Res<'_, DrawFunctions<AlphaMask3dPrepass>>,
prepass_pipeline: Res<'_, PrepassPipeline<M>>,
pipelines: ResMut<'_, SpecializedMeshPipelines<PrepassPipeline<M>>>,
pipeline_cache: Res<'_, PipelineCache>,
msaa: Res<'_, Msaa>,
render_meshes: Res<'_, RenderAssets<Mesh>>,
render_materials: Res<'_, RenderMaterials<M>>,
material_meshes: Query<'_, '_, (&Handle<M>, &Handle<Mesh>, &MeshUniform)>,
views: Query<'_, '_, (&ExtractedView, &VisibleEntities, &mut RenderPhase<Opaque3dPrepass>, &mut RenderPhase<AlphaMask3dPrepass>, Option<&DepthPrepass>, Option<&NormalPrepass>)>
)where
M::Data: PartialEq + Eq + Hash + Clone,