Search across packages, versions, files, declarations, and comments. Use multiple terms to narrow results (AND), and add @vertex, @fragment, or @compute to filter by shader stage.
1#define_import_path bevy_pbr::atmosphere::types
3struct Atmosphere {
4 ground_albedo: vec3<f32>,
5 // Radius of the planet
6 bottom_radius: f32, // units: m
7 // Radius at which we consider the atmosphere to 'end' for out calculations (from center of planet)
8 top_radius: f32, // units: m
9}
11struct AtmosphereSettings {
12 transmittance_lut_size: vec2<u32>,
13 multiscattering_lut_size: vec2<u32>,
14 sky_view_lut_size: vec2<u32>,
15 aerial_view_lut_size: vec3<u32>,
16 transmittance_lut_samples: u32,
17 multiscattering_lut_dirs: u32,
18 multiscattering_lut_samples: u32,
19 sky_view_lut_samples: u32,
20 aerial_view_lut_samples: u32,
21 aerial_view_lut_max_distance: f32,
22 scene_units_to_m: f32,
23 sky_max_samples: u32,
24 rendering_method: u32,
27// "Atmosphere space" is just the view position with y=0 and oriented horizontally,
28// so the horizon stays a horizontal line in our luts
29struct AtmosphereTransforms {
30 world_from_atmosphere: mat4x4<f32>,
33struct AtmosphereData {
34 atmosphere: Atmosphere,
35 settings: AtmosphereSettings,
Contents