bevyengine / bevyengine/bevy

Panic if `bevy_anti_alias` is enabled and `bevy_post_process` is disabled

Open
#21,958 0 comments 0 reactions 0 assignees View on GitHub
A-Rendering C-Bug S-Needs-Design
Dominant language
Rust
Stars
48.2k
Forks
4.8k
Avg merge
3d 16h
Merged PRs (30d)
171

Description

## Bevy version and features

0.17.3
with `bevy_anti_alias` feature and without `bevy_post_process`

## What you did

Just run bevy with a simple scene

## What went wrong

DLSS and TAA plugins add nodes that depend on `Node3d::MotionBlur` and `Node3d::Bloom`, but them don't exist in render graph if `bevy_anti_alias` is disabled.
```
0: bevy_app::app::plugin build
with plugin="bevy_anti_alias::taa::TemporalAntiAliasPlugin"
at /home/luo/.cargo/git/checkouts/bevy-505fa39dcb5ad98a/36358fb/crates/bevy_app/src/app.rs:518
1: bevy_app::app::plugin build
with plugin="bevy_anti_alias::AntiAliasPlugin"
at /home/luo/.cargo/git/checkouts/bevy-505fa39dcb5ad98a/36358fb/crates/bevy_app/src/app.rs:518

thread 'main' (939766) panicked at /home/luo/.cargo/git/checkouts/bevy-505fa39dcb5ad98a/36358fb/crates/bevy_anti_alias/src/taa/mod.rs:73:14:
node MotionBlur does not exist
stack backtrace:
0: __rustc::rust_begin_unwind
at /rustc/0df64c57843a9612c68dd78bafa133f5b5d340c4/library/std/src/panicking.rs:690:5
1: core::panicking::panic_fmt
at /rustc/0df64c57843a9612c68dd78bafa133f5b5d340c4/library/core/src/panicking.rs:80:14
2: add_node_edges<5, (bevy_core_pipeline::core_3d::graph::Node3d, bevy_core_pipeline::core_3d::graph::Node3d, bevy_core_pipeline::core_3d::graph::Node3d, bevy_core_pipeline::core_3d::graph::Node3d, bevy_core_pipeline::core_3d::graph::Node3d)>
at /home/luo/.cargo/git/checkouts/bevy-505fa39dcb5ad98a/36358fb/crates/bevy_render/src/render_graph/graph.rs:159:26
3: add_render_graph_edges<5, bevy_core_pipeline::core_3d::graph::Core3d, (bevy_core_pipeline::core_3d::graph::Node3d, bevy_core_pipeline::core_3d::graph::Node3d, bevy_core_pipeline::core_3d::graph::Node3d, bevy_core_pipeline::core_3d::graph::Node3d, bevy_core_pipeline::core_3d::graph::Node3d)>
at /home/luo/.cargo/git/checkouts/bevy-505fa39dcb5ad98a/36358fb/crates/bevy_render/src/render_graph/app.rs:67:19
4: add_render_graph_edges<5, bevy_core_pipeline::core_3d::graph::Core3d, (bevy_core_pipeline::core_3d::graph::Node3d, bevy_core_pipeline::core_3d::graph::Node3d, bevy_core_pipeline::core_3d::graph::Node3d, bevy_core_pipeline::core_3d::graph::Node3d, bevy_core_pipeline::core_3d::graph::Node3d)>
at /home/luo/.cargo/git/checkouts/bevy-505fa39dcb5ad98a/36358fb/crates/bevy_render/src/render_graph/app.rs:131:9
5: build
at /home/luo/.cargo/git/checkouts/bevy-505fa39dcb5ad98a/36358fb/crates/bevy_anti_alias/src/taa/mod.rs:73:14
6: {closure#0}
at /home/luo/.cargo/git/checkouts/bevy-505fa39dcb5ad98a/36358fb/crates/bevy_app/src/app.rs:520:44
7: call_once
```

Contributor guide

Open the contributing guide

Research direction

Start with crates/bevy_anti_alias/src/taa/mod.rs at the reported plugin build line, then inspect the render-graph nodes named in the panic and the bevy_anti_alias/bevy_post_process feature combination. Run Bevy with a simple scene using bevy_anti_alias without bevy_post_process; done means that configuration no longer panics while configuring TAA or DLSS nodes.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
computer-graphics, game-dev
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.