-
-
Notifications
You must be signed in to change notification settings - Fork 3.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Tonemapping affects other cameras in split screen #14389
Comments
Edit: This still has problems with UI on the top camera, background colors are being blended into the scene only on the top camera. So not a usable workaround either. I was able to work around this with a lot of trial and error: camera: Camera {
hdr: true,
output_mode: CameraOutputMode::Write {
blend_state: Some(BlendState {
color: BlendComponent {
src_factor: BlendFactor::Dst,
dst_factor: BlendFactor::Zero,
operation: BlendOperation::Max,
},
alpha: default()
}),
clear_color: ClearColorConfig::None,
},
..bevy_default.camera
}, Setting the |
I patching bevy with this draft PR and it completely fixed this issue: #14287 |
Closing as completed in #14287 |
Bevy version
0.14.0
The release number or commit hash of the version you're using.
[Optional] Relevant system information
cargo 1.79.0 (ffa9cf99a 2024-06-03)
rustc 1.79.0 (129f3b996 2024-06-10)
Arch Linux (EndeavorOS), KDE, (tested both Wayland and X11)
Firefox 127.0.2 & Chrome 126.0.6478.126
Nvidia 3080 Driver version 555.58.02
AdapterInfo { name: "NVIDIA GeForce GTX 980, or similar", vendor: 4318, device: 0, device_type: Other, driver: "WebGL", driver_info: "2.0", backend: Gl }
What you did
Added tonemapping in a splitscreen game.
What went wrong
If it's not clear, break this out into:
Tonemapping to look the same on each camera
The tonemapping looks more intense on other cameras, appears like it's multiplying the effect due to it not being constrained to the camera's viewport.
Additional information
You can replicate this with the official split_screen.rs example by setting the camera to have
hdr: true
and addingtonemapping: Tonemapping::AcesFitted
to the camera bundle. AcesFitted is the most obvious since it's more extreme.`
Example:
Interestingly if you add
Msaa::Sample4
and then disableCamera::msaa_writeback
it starts working correctly. Unfortunately that breaks the UI so that's not a good workaround #14388The text was updated successfully, but these errors were encountered: