diff options
Diffstat (limited to '')
| -rw-r--r-- | wgpu/src/window/compositor.rs | 14 | 
1 files changed, 13 insertions, 1 deletions
| diff --git a/wgpu/src/window/compositor.rs b/wgpu/src/window/compositor.rs index 15bef60c..c55ffa46 100644 --- a/wgpu/src/window/compositor.rs +++ b/wgpu/src/window/compositor.rs @@ -67,7 +67,19 @@ impl<Theme> Compositor<Theme> {          log::info!("Selected: {:#?}", adapter.get_info());          let format = compatible_surface.as_ref().and_then(|surface| { -            surface.get_capabilities(&adapter).formats.first().copied() +            let capabilities = surface.get_capabilities(&adapter); + +            capabilities +                .formats +                .iter() +                .filter(|format| format.describe().srgb) +                .copied() +                .next() +                .or_else(|| { +                    log::warn!("No sRGB format found!"); + +                    capabilities.formats.first().copied() +                })          })?;          log::info!("Selected format: {:?}", format); | 
