Commit Graph

122 Commits

Author SHA1 Message Date
guillaume abadie
9027c3940c Fixes TSR breaking the ICVFX camera motion blur setting in ndisplay
#rb josie.yang
#jira UE-141841
#preflight 620e2df800661410e332c16e
#lockdown alejandro.arango

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 19060901 in //UE5/Release-5.0/... via CL 19078625
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19122167 by guillaume abadie in ue5-main branch]
2022-02-24 14:50:42 -05:00
jeremy moore
e9b8605b3b Add r.VelocityOutputPass render setting and deprecated r.BasePassOutputsVelocity and r.DepthPassMergedWithVelocity.
r.VelocityOutputPass supports the 3 valid settings: depth pass, base pass, after base pass.
#rb rob.krajcarski
#preflight 61f86031114ec25fe0b87dab

#ROBOMERGE-AUTHOR: jeremy.moore
#ROBOMERGE-SOURCE: CL 18799499 in //UE5/Release-5.0/... via CL 18801888 via CL 18802482
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v908-18788545)

[CL 18808175 by jeremy moore in ue5-main branch]
2022-02-01 09:53:17 -05:00
guillaume abadie
04ae8df0b1 Only applies r.MotionBlur.HalfResGather=1 on low and medium scalability settings
#rb trivial
#jira none
#preflight 61f8242da6632a34f34bc425

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 18793536 in //UE5/Release-5.0/... via CL 18793702 via CL 18794553
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v908-18788545)

[CL 18795039 by guillaume abadie in ue5-main branch]
2022-01-31 14:57:52 -05:00
guillaume abadie
82d704ea77 Fixes saparate translucency screen percentage
#rb none
#jira UE-135770
#preflight 61f3d600801201ab38802f25

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 18770204 in //UE5/Release-5.0/... via CL 18770211 via CL 18770261
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18770266 by guillaume abadie in ue5-main branch]
2022-01-28 08:13:09 -05:00
andrew davidson
3542cab338 FMatrix explicit cast fixes - Renderer
#rb ben.ingram, zak.middleton
#preflight 61f285e71e5d78c38307cda4

#ROBOMERGE-AUTHOR: andrew.davidson
#ROBOMERGE-SOURCE: CL 18752245 in //UE5/Release-5.0/... via CL 18752267 via CL 18752335
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18752338 by andrew davidson in ue5-main branch]
2022-01-27 07:20:20 -05:00
guillaume abadie
cbc48d08b3 Fixes nan that causes motion blur tile classification to fails and make motion blur a lot more expensive
#rb none
#jira UE-136911
#preflight 61b0f6b763312f0a22003604

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 18408468 in //UE5/Release-5.0/... via CL 18408492
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v897-18405271)

[CL 18408508 by guillaume abadie in ue5-release-engine-test branch]
2021-12-08 13:30:42 -05:00
jeanfrancois dube
1d30bf0542 Fix motion blur shader parameters bad merge.
#rb none
[FYI] guillaume.abadie

#ROBOMERGE-AUTHOR: jeanfrancois.dube
#ROBOMERGE-SOURCE: CL 18376151 in //UE5/Release-5.0/... via CL 18376156
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18376158 by jeanfrancois dube in ue5-release-engine-test branch]
2021-12-03 21:54:44 -05:00
jon nabozny
5d4aaabcfb Allows TSR to produce MotionBlur's velocity flatten textures.
Adds 20us to TSR's DilateVelocity, but eliminate MotionBlur's velocity flatten that is 120us on console.

#rb josie.yang
#lockdown michal.valient
#preflight 616dabef6e12ff0001056c70, 616db80708cf4d000146e526

#ROBOMERGE-OWNER: jon.nabozny
#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17850441 via CL 18003913 via CL 18369657 via CL 18369719
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18369796 by jon nabozny in ue5-release-engine-test branch]
2021-12-03 13:05:09 -05:00
guillaume abadie
1b77f60767 Fixes some warning when cooking motion blur shaders
#rb josie.yang
#lockdown michal.valient
#preflight 616d853508cf4d00013dcb1e

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17845454 via CL 18003548 via CL 18369491 via CL 18369560
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18369603 by guillaume abadie in ue5-release-engine-test branch]
2021-12-03 12:54:45 -05:00
guillaume abadie
d69c4ec4c5 Saves 0.5ms in post processing in sandbox
1) Allows motion blur to output half and/or quarter res based on what the following passes needs. This avoids adding downsampling passes after
2) Runs FFT bloom on async compute to overlap with all the histogram exposure and local pre exposure stuf
3) Fixes a bug where r.Bloom.HalfResolutionFFT resolution was also dependent r.PostProcessing.QuarterResolutionDownsample

Frosty configurations:
1) Configures to use simple 2x2 dowsampling in post processing to be able to use the fast motion blur code path
2) Configures histogram exposure and local exposure to quarter res.

#rb none
#preflight 616b3f3cf36f7c00011ec1d5
#lockdown michal.valient
[FYI] tiago.costa, josie.wang, brian.karis

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17838792 via CL 18003486 via CL 18369468 via CL 18369549
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18369594 by guillaume abadie in ue5-release-engine-test branch]
2021-12-03 12:54:09 -05:00
guillaume abadie
ebc9b041a1 Implements dynamic half-res motion blur
1) Motionblur have tile classification to improve VGPR pressure on fast motion blur gathering tiles
2) Motionblur tile classification can lower the gathering resolution to half res with r.MotionBlur.HalfResGather=1 on part of the screen with large motion vectors to reduce VALU costs under large movements, but still can compose with full res scene color without round trip to main memory to avoid adding memory bandwidth costs
3) TSR output a half res scene color in Mip1 so motion blur can dynamically sample half res under largement movements with r.MotionBlur.HalfResInput=1 to save memory bandwidth in the motion blur convolution
4) Number of direction samples becomes dynamic (and clamped to exisiting motion blur quality) based on length of motion vector to saves VALU with slow pixel velocities
5) Motion blur automatically avoid sampling full res center if the blur kernel completly occlude its to completly stop fetching full res to save memory bandwidth cost under large motions

Drops motion blur costs from 753us to 339us of motion blur costs + 40us additional cost in TSR to output half res in sandbox under movements.

And saves an average 0.3ms in the entire chase gameplay sequence.

#rb josie.yang
[FYI] brian.karis
#preflight 616960548b364e0001807ac7, 616998724cf7190001d2e6f2
#lockdown michal.valient

#ROBOMERGE-OWNER: guillaume.abadie
#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17830244 via CL 18002937 via CL 18369356 via CL 18369373
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18369376 by guillaume abadie in ue5-release-engine-test branch]
2021-12-03 12:40:10 -05:00
guillaume abadie
002ab80879 Fixes warning in motion blur at cook time
#rb trivial
#lockdown michal.valient
#preflight trivial

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17708682 via CL 17977474 via CL 18366612 via CL 18366701
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18366762 by guillaume abadie in ue5-release-engine-test branch]
2021-12-03 02:42:25 -05:00
guillaume abadie
9704c5b73b Adds a GPU stat for motion blur
#rb trivial
#lockdown michal.valient
#preflight 61556ca57b2a6200011ccf28

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17674536 via CL 17966247 via CL 18365946 via CL 18366070
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18366175 by guillaume abadie in ue5-release-engine-test branch]
2021-12-03 01:31:15 -05:00
guillaume abadie
6f6565d52a Implements r.MotionBlur.Directions=2
#rb brian.karis
#preflight 615488cb03f3320001026a35
#lockdown michal.valient

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17664103 via CL 17965778 via CL 18365765 via CL 18365846
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18365905 by guillaume abadie in ue5-release-engine-test branch]
2021-12-03 01:16:55 -05:00
jon nabozny
941da61b42 Restructures motion blur shader files for better maintainability of dual motion blur directions change
This change is only move code arround to make the following changes easier to diff.

#rb none
#lockdown michal.valient
#preflight 614ca76788dbdb0001778b1a, 614cb58b74f7e70001d2264e

#ROBOMERGE-OWNER: jon.nabozny
#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17611881 via CL 17962937 via CL 18364977 via CL 18365034
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18365104 by jon nabozny in ue5-release-engine-test branch]
2021-12-02 23:58:29 -05:00
Marc Audy
0c3be2b6ad Merge Release-Engine-Staging to Test @ CL# 18240298
[CL 18241953 by Marc Audy in ue5-release-engine-test branch]
2021-11-18 14:37:34 -05:00
christopher waters
6c4b4a91a4 Adding a required StencilRef argument to SetGraphicsPipelineState.
#jira none
#rb zach.bethel, mihnea.balta, florin.pascu
#preflight 61312f4a79ce170001d4a79e

#ROBOMERGE-SOURCE: CL 17422777 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v865-17346139)
#ROBOMERGE[bot1]: emt

[CL 17422941 by christopher waters in ue5-release-engine-test branch]
2021-09-03 12:04:52 -04:00
zach bethel
5ec769f91e RDG Parallel Execution (disabled by default)
- Refactored RDG to support free-threaded execution of passes.
 - Refactored renderer to use specific RHI command list variants in pass lambda. Immediate command list passes are forced to stay on the render thread, while other variants can be parallelized.

#rb christopher.waters

#ROBOMERGE-SOURCE: CL 16838717 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)

[CL 16838724 by zach bethel in ue5-release-engine-test branch]
2021-07-13 12:38:37 -04:00
jamie hayes
9389c3eb1e Add another optional separate translucency pass that gets composited after motion blur. Has no depth test (due to TAA color upsample with no upsampled depth), and is intended to work around reprojection and motion blur artifacts with translucency.
#rb zach.bethel, michal.valient
#jira none

[CL 16381727 by jamie hayes in ue5-main branch]
2021-05-19 02:09:02 -04:00
aurel cordonnier
8eebe8841f Merge UE5/RET @ 16305968 to UE5/Main
This represents UE4/Main @ 16261013 and Dev-PerfTest @ 16259937

[CL 16306996 by aurel cordonnier in ue5-main branch]
2021-05-12 18:10:03 -04:00
Andrew Davidson
3ddc3a4da3 Merge up from //UE5/Dev-LargeWorldCoordinates
#rb none

[CL 16211417 by Andrew Davidson in ue5-main branch]
2021-05-05 15:07:25 -04:00
aurel cordonnier
50944fd712 Merge UE5/RES @ 16162155 to UE5/Main
This represents UE4/Main @ 16130047 and Dev-PerfTest @ 16126156

[CL 16163576 by aurel cordonnier in ue5-main branch]
2021-04-29 19:32:06 -04:00
Guillaume Abadie
07bc47754f Implements FScreenTransform with operator overload to construct custom viewport transformations easily
#rb zach.bethel

[CL 16114603 by Guillaume Abadie in ue5-main branch]
2021-04-26 11:28:05 -04:00
Guillaume Abadie
445bd99973 Fixes crash in motion blur when enabling Gen5TAA with VR
#rb none

[CL 16060417 by Guillaume Abadie in ue5-main branch]
2021-04-20 09:16:35 -04:00
Wei Liu
66a2040e8c Fix a crash when rendering shadow map depth and velocity on mobile opengl platform.
#jira  UE-113734

#rb Dmitriy.Dyomin, Jack.Porter, Mi.Wang

[CL 16050424 by Wei Liu in ue5-main branch]
2021-04-19 10:00:09 -04:00