-
-
Notifications
You must be signed in to change notification settings - Fork 4.2k
Initial DLSS implementation #19864
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
Merged
Merged
Initial DLSS implementation #19864
Changes from 71 commits
Commits
Show all changes
78 commits
Select commit
Hold shift + click to select a range
c75b2b4
Initial DLSS implementation
JMS55 af1b47c
Update example description
JMS55 eb8c77f
Rename variable
JMS55 951c3f9
Merge commit '1579256709dd64dcc4910b0bad5e81622d9ede0c' into dlss3
JMS55 742ebfa
Fix merge
JMS55 463c66d
Switch to git dep
JMS55 950f3e8
Merge branch 'main' into dlss3
JMS55 bf56980
Add release notes
JMS55 6b960b0
Modify release notes
JMS55 cf1a1f7
Add note about DlssSupported
JMS55 1b71463
Merge commit '5e3927ba489f597dd189f63286dc7985840db1b5' into dlss3
JMS55 10c96e8
Fix resolution override to work even if the camera lacks a viewport
JMS55 04f488b
Update release notes
JMS55 e2a9761
Docs
JMS55 fda09d1
Fix typo
JMS55 ab113c8
Fix
JMS55 5ab0093
Add missing import
JMS55 baa2668
Switch link to https://github.com/bevyengine/dlss_wgpu
JMS55 e2d8a9e
Fix another link
JMS55 8084745
Merge branch 'main' into dlss3
JMS55 e202226
Update release-content/release-notes/dlss.md
JMS55 1701bb1
Add blurb
JMS55 6f9114b
Merge branch 'main' into dlss3
JMS55 484310d
Move DLSS setup to ManageViews, so that prepare systems can later che…
JMS55 27f40ef
Merge commit '20dfae9a2d07038bda2921f82af50ded6151c3de' into dlss3
JMS55 d962a37
Release notes
JMS55 baa46ae
Have Solari account for MainPassResolutionOverride
JMS55 a6751bd
Misc
JMS55 b89387d
Merge commit '2bddbdfd7c920d1ea61245dcdb7ff1c155e6b03b' into dlss3
JMS55 b0303fe
Fix bug
JMS55 ded4b9f
Merge commit '04cc4bb55681fca705cd97ba3b441d24a0b3bad7' into dlss3
JMS55 497e85f
Fix rebase
JMS55 e33d1f0
More fixes
JMS55 3499283
Fix
JMS55 733017a
Use dlss_wgpu::create_instance
JMS55 e66ba3f
Testing ray reconstruction setup
JMS55 1bce5f5
Fix
JMS55 f707d2d
More fixes
JMS55 97989d1
Use main branch of dlss_wgpu
JMS55 4d7a107
Fix urls
JMS55 8c7df68
Fix solari copy under DLSS
JMS55 546244a
Merge commit '0b30b6ba588abfe5d862631603860e30c461f9d8' into dlss3
JMS55 da757a8
Trait-ify DLSS so that DLSS-RR can be supported easily
JMS55 40acb71
Fix render world cleanup
JMS55 24c6bce
Markdown lint
JMS55 f644683
Have bevy_anti_aliasing instead of bevy_internal enable bevy_render/dlss
JMS55 6225e61
Add main_pass_viewport for shaders
JMS55 975a10b
Use main_pass_viewport in SolariLighting
JMS55 4c87049
Merge commit 'b378e0ad9701ac1ad98763ee6106bba164e20907' into dlss3
JMS55 b6412b5
Merge commit '40b6940356e4ba1cf5ff3dc7a43f7261d660f242' into dlss3
JMS55 e2f6ec4
Fix rebase
JMS55 f205394
Add timing span
JMS55 160c386
Merge commit '777556453cacd3ab9c69df5eeb2ba7526cb0c0b8' into dlss3
JMS55 9cb2e1a
Don't enable DLSS for bevy_ci_testing
JMS55 890bc71
Switch back to bevy repo for dlss_wgpu
JMS55 73c35a7
Finish hooking up DLSS-RR
JMS55 b6aaea4
Use specular motion vectors as it's better than specular hit distance
JMS55 817cd14
Format
JMS55 e954fc9
Merge branch 'main' into dlss3
JMS55 622522c
Merge commit '3f14e3486063b8c2435e06130cf538135e30df0b' into dlss3
JMS55 d7cde18
Add seperate force_disable_dlss feature
JMS55 9209d3b
Build templated pages
JMS55 53e1c2f
Add note about UUID
JMS55 548b53d
Remove force_disable_dlss from public example
JMS55 45d6f3c
Merge branch 'main' into dlss3
JMS55 4eeab79
Revert "Remove force_disable_dlss from public example"
JMS55 73ff83f
Merge commit 'e742730e3540b67643389c80d35b4478851941a3' into dlss3
JMS55 a406188
Merge branch 'main' into dlss3
JMS55 2bf8837
Merge commit 'c0eb89eedcf0f451a26ea71e456532b8b8311a29' into dlss3
JMS55 7b3f14b
Fix merge
JMS55 3bfd551
Port to "raw vulkan init"
cart c349dcd
Address feedback
cart da202cc
Merge commit 'a76e0a20d9ea44f9f042e15a8624024f41e1f5dd' into dlss3
JMS55 bbf69b3
Use published dlss_wgpu
JMS55 9374266
Fix feature
JMS55 20b7d61
Credit cart
JMS55 4d6d6ad
Remove unused import
JMS55 11ad770
Fix some things
cart File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,29 @@ | ||
| use super::{prepare::DlssRenderContext, Dlss, DlssFeature}; | ||
| use bevy_camera::{Camera, MainPassResolutionOverride, Projection}; | ||
| use bevy_ecs::{ | ||
| query::{Has, With}, | ||
| system::{Commands, Query, ResMut}, | ||
| }; | ||
| use bevy_render::{sync_world::RenderEntity, view::Hdr, MainWorld}; | ||
|
|
||
| pub fn extract_dlss<F: DlssFeature>( | ||
| mut commands: Commands, | ||
| mut main_world: ResMut<MainWorld>, | ||
| cleanup_query: Query<Has<Dlss<F>>>, | ||
| ) { | ||
| let mut cameras_3d = main_world | ||
| .query_filtered::<(RenderEntity, &Camera, &Projection, Option<&mut Dlss<F>>), With<Hdr>>(); | ||
|
|
||
| for (entity, camera, camera_projection, mut dlss) in cameras_3d.iter_mut(&mut main_world) { | ||
| let has_perspective_projection = matches!(camera_projection, Projection::Perspective(_)); | ||
| let mut entity_commands = commands | ||
| .get_entity(entity) | ||
| .expect("Camera entity wasn't synced."); | ||
| if dlss.is_some() && camera.is_active && has_perspective_projection { | ||
| entity_commands.insert(dlss.as_deref().unwrap().clone()); | ||
| dlss.as_mut().unwrap().reset = false; | ||
| } else if cleanup_query.get(entity) == Ok(true) { | ||
| entity_commands.remove::<(Dlss<F>, DlssRenderContext<F>, MainPassResolutionOverride)>(); | ||
| } | ||
| } | ||
| } |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.