docs/bevy/release-content/migration-guides/tonemapping_none_passthrough.md 977 B · 25 lines · raw · history

1 ---
2 title: "`Tonemapping::None` is now a full passthrough"
3 pull_requests: [25499, 25685]
4 ---
5
6 `Tonemapping::None` is now a full passthrough. `ColorGrading` and `DebandDither` no longer
7 apply under it, and negative color channels are no longer clamped to zero. `Camera3d`
8 enables `DebandDither` by default, so a `Camera3d` without `Hdr` that used
9 `Tonemapping::None` renders differently. If you used `Tonemapping::None` to turn off the
10 tone curve, use the new `Tonemapping::Linear` instead. It applies no tone curve and keeps
11 grading, dither, and the clamp.
12
13 ```rust
14 // 0.19
15 commands.spawn((Camera3d::default(), Tonemapping::None));
16
17 // 0.20
18 commands.spawn((Camera3d::default(), Tonemapping::Linear));
19 ```
20
21 `Camera2d` now defaults to `Tonemapping::Linear`. No change is needed for 2D cameras. A
22 `Camera2d` with `Hdr` now runs the tonemapping pass.
23
24 Bevy logs a warning for a camera that combines `Tonemapping::None` with `DebandDither::Enabled`
25 or a non-default `ColorGrading`.