mirror of
https://github.com/bevyengine/bevy
synced 2024-11-23 13:13:49 +00:00
838b318863
Attempt to make features like bloom https://github.com/bevyengine/bevy/pull/2876 easier to implement. **This PR:** - Moves the tonemapping from `pbr.wgsl` into a separate pass - also add a separate upscaling pass after the tonemapping which writes to the swap chain (enables resolution-independant rendering and post-processing after tonemapping) - adds a `hdr` bool to the camera which controls whether the pbr and sprite shaders render into a `Rgba16Float` texture **Open questions:** - ~should the 2d graph work the same as the 3d one?~ it is the same now - ~The current solution is a bit inflexible because while you can add a post processing pass that writes to e.g. the `hdr_texture`, you can't write to a separate `user_postprocess_texture` while reading the `hdr_texture` and tell the tone mapping pass to read from the `user_postprocess_texture` instead. If the tonemapping and upscaling render graph nodes were to take in a `TextureView` instead of the view entity this would almost work, but the bind groups for their respective input textures are already created in the `Queue` render stage in the hardcoded order.~ solved by creating bind groups in render node **New render graph:** ![render_graph](https://user-images.githubusercontent.com/22177966/147767249-57dd4229-cfab-4ec5-9bf3-dc76dccf8e8b.png) <details> <summary>Before</summary> ![render_graph_old](https://user-images.githubusercontent.com/22177966/147284579-c895fdbd-4028-41cf-914c-e1ffef60e44e.png) </details> Co-authored-by: Carter Anderson <mcanders1@gmail.com>
32 lines
1 KiB
TOML
32 lines
1 KiB
TOML
[package]
|
|
name = "bevy_core_pipeline"
|
|
version = "0.9.0-dev"
|
|
edition = "2021"
|
|
authors = [
|
|
"Bevy Contributors <bevyengine@gmail.com>",
|
|
"Carter Anderson <mcanders1@gmail.com>",
|
|
]
|
|
description = "Provides a core render pipeline for Bevy Engine."
|
|
homepage = "https://bevyengine.org"
|
|
repository = "https://github.com/bevyengine/bevy"
|
|
license = "MIT OR Apache-2.0"
|
|
keywords = ["bevy"]
|
|
|
|
[features]
|
|
trace = []
|
|
webgl = []
|
|
|
|
[dependencies]
|
|
# bevy
|
|
bevy_app = { path = "../bevy_app", version = "0.9.0-dev" }
|
|
bevy_asset = { path = "../bevy_asset", version = "0.9.0-dev" }
|
|
bevy_derive = { path = "../bevy_derive", version = "0.9.0-dev" }
|
|
bevy_ecs = { path = "../bevy_ecs", version = "0.9.0-dev" }
|
|
bevy_reflect = { path = "../bevy_reflect", version = "0.9.0-dev" }
|
|
bevy_render = { path = "../bevy_render", version = "0.9.0-dev" }
|
|
bevy_transform = { path = "../bevy_transform", version = "0.9.0-dev" }
|
|
bevy_utils = { path = "../bevy_utils", version = "0.9.0-dev" }
|
|
|
|
serde = { version = "1", features = ["derive"] }
|
|
bitflags = "1.2"
|
|
radsort = "0.1"
|