diff --git a/crates/bevy_gizmos_render/src/pipeline_3d.rs b/crates/bevy_gizmos_render/src/pipeline_3d.rs index 00fda49ee587b..d2731f9d62d3f 100644 --- a/crates/bevy_gizmos_render/src/pipeline_3d.rs +++ b/crates/bevy_gizmos_render/src/pipeline_3d.rs @@ -22,7 +22,7 @@ use bevy_ecs::{ system::{Commands, Query, Res, ResMut}, }; use bevy_image::BevyDefault as _; -use bevy_pbr::{MeshPipeline, MeshPipelineKey, SetMeshViewBindGroup}; +use bevy_pbr::{ExtractedAtmosphere, MeshPipeline, MeshPipelineKey, SetMeshViewBindGroup}; use bevy_render::{ render_asset::{prepare_assets, RenderAssets}, render_phase::{ @@ -305,6 +305,7 @@ fn queue_line_gizmos_3d( Has, Has, Has, + Has, ), )>, ) -> Result<(), BevyError> { @@ -318,7 +319,7 @@ fn queue_line_gizmos_3d( view, msaa, render_layers, - (normal_prepass, depth_prepass, motion_vector_prepass, deferred_prepass, oit), + (normal_prepass, depth_prepass, motion_vector_prepass, deferred_prepass, oit, atmosphere), ) in &views { let Some(transparent_phase) = transparent_render_phases.get_mut(&view.retained_view_entity) @@ -351,6 +352,10 @@ fn queue_line_gizmos_3d( view_key |= MeshPipelineKey::OIT_ENABLED; } + if atmosphere { + view_key |= MeshPipelineKey::ATMOSPHERE; + } + for (entity, main_entity, config) in &line_gizmos { if !config.render_layers.intersects(render_layers) { continue;