Bloom

Bloom

  • intensity : f32
  • low_frequency_boost : f32
  • low_frequency_boost_curvature : f32
  • high_pass_frequency : f32
  • prefilter : bevy_core_pipeline::bloom::settings::BloomPrefilter
  • composite_mode : bevy_core_pipeline::bloom::settings::BloomCompositeMode
  • max_mip_dimension : u32
  • uv_offset : f32

Description

Applies a bloom effect to an HDR-enabled 2d or 3d camera.

Bloom emulates an effect found in real cameras and the human eye, causing halos to appear around very bright parts of the scene.

See also https://en.wikipedia.org/wiki/Bloom_(shader_effect).

Usage Notes

Bloom is currently not compatible with WebGL2.

Often used in conjunction with bevy_pbr::StandardMaterial::emissive for 3d meshes.

Bloom is best used alongside a tonemapping function that desaturates bright colors, such as [crate::tonemapping::Tonemapping::TonyMcMapface].

Bevy's implementation uses a parametric curve to blend between a set of blurred (lower frequency) images generated from the camera's view. See https://starlederer.github.io/bloom/ for a visualization of the parametric curve used in Bevy as well as a visualization of the curve's respective scattering profile.

Functions