bevyengine / bevyengine/bevy

Combine upscaling, rcas, and tonemapping passes into one "camera resolve" render node

Open
#16,721 0 comments 0 reactions 0 assignees View on GitHub
A-Rendering C-Feature D-Trivial S-Ready-For-Implementation
Dominant language
Rust
Stars
48.2k
Forks
4.8k
Avg merge
3d 22h
Merged PRs (30d)
161

Description

## What problem does this solve or what need does it fill?

Each node uses a separate render pass, which costs performance.

## What solution would you like?

Combine the passes into a new "camera resolve" pass.

* RCAS is optional
* Tonemapping is optional, only used when Camera::hdr == true
* "Upscaling" just blits to the camera's render target, nothing special to do here

UI might complicate this. Not sure if we can move it to after camera resolve/upscaling, as you don't want to tonemap or apply RCAS to it.

Contributor guide

Open the contributing guide

Research direction

Start by locating the separate upscaling, RCAS, and tonemapping render passes and tracing how the camera render target and UI are handled. Define how they would fit into a camera resolve pass while preserving optional RCAS, HDR-only tonemapping, and UI behavior; the issue does not name specific files or tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
computer-graphics
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.