Commit Graph

25 Commits

Author SHA1 Message Date
guillaume abadie
755fa31f85 Fixes static analysis warning in TSR
#rb trivial
#jira UE-136668
#preflight triviaal

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 18393493 in //UE5/Release-5.0/... via CL 18393497
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v896-18170469)

[CL 18393502 by guillaume abadie in ue5-release-engine-test branch]
2021-12-07 06:02:28 -05:00
guillaume abadie
f5c4c6f008 Fixes compilation failure in TSR
#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 18369849 in //UE5/Release-5.0/... via CL 18369859
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18369911 by guillaume abadie in ue5-release-engine-test branch]
2021-12-03 13:11:15 -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
618221e877 Fixes TSR outputing black on D3D11
D3D11 doesn't allow to bind a UAV more than once per shader

#rb michal.valient
#lockdown michal.valient
#preflight skip to unblock d3d11 build ASAP

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17832237 via CL 18002971 via CL 18369437 via CL 18369511
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18369574 by guillaume abadie in ue5-release-engine-test branch]
2021-12-03 12:52:29 -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
faf504eb14 Removes PRAGMA_DISABLE_OPTIMIZATION in TSR
#lockdown michal.valient
#rb trivial
#preflight build fix

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17771017 via CL 17986036 via CL 18368157 via CL 18368231
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18368267 by guillaume abadie in ue5-release-engine-test branch]
2021-12-03 10:04:55 -05:00
guillaume abadie
59b198cc17 Improves AA quality of geometric velocity edges under motion to sit better in the background.
#rb none
#lockdown michal.valient
#preflight 61619d0f34ef2f0001b4ebc0

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17770953 via CL 17986027 via CL 18368156 via CL 18368230
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18368263 by guillaume abadie in ue5-release-engine-test branch]
2021-12-03 10:04:47 -05:00
guillaume abadie
d3b47f826f Reduces TSR ghosting on lumen reflections
#rb none
#lockdown michal.valient
#preflight 615ec08da3d3b3000192abd0

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17747908 via CL 17985152 via CL 18367296 via CL 18367326
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18367341 by guillaume abadie in ue5-release-engine-test branch]
2021-12-03 03:43:20 -05:00
guillaume abadie
596a40db85 Implements TSR velocity hole filling to have better guess of what parallax disoccluded area might look like at history reprojection
#rb michal.valient
#lockdown michal.valient
#preflight 615e088b1a158300017f42c7

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17741847 via CL 17982980 via CL 18367274 via CL 18367317
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18367336 by guillaume abadie in ue5-release-engine-test branch]
2021-12-03 03:42:40 -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
guillaume abadie
cdb11896a2 Reduces noise when history rejecting on noisy input
#rb none
#preflight 61364c689c40ec0001c35677

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17440001 via CL 17440123
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17440133 by guillaume abadie in ue5-release-engine-test branch]
2021-09-06 16:11:26 -04:00
guillaume abadie
c5d0e28aed Resurects moire heuristic
#lockdown Michal.Valient
#preflight 612e5fad79d62b00019716f8

#ROBOMERGE-SOURCE: CL 17373904 via CL 17374094
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v865-17346139)

[CL 17374125 by guillaume abadie in ue5-release-engine-test branch]
2021-08-31 14:40:23 -04:00
guillaume abadie
751b1dc478 Fixes a source of a blur when reprojecting TSR's history
#rb none
#preflight none

#ROBOMERGE-SOURCE: CL 17305419 via CL 17305435
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v861-17282326)

[CL 17305442 by guillaume abadie in ue5-release-engine-test branch]
2021-08-25 13:01:57 -04:00
richard wallis
8d59a2f340 We need to give a hint to the MetalRHI that we are going to need a buffer backed texture for texture atomic emulation. Update Temporal Super Resolution to match new flag. Swap some flag checks for MetalRHI that are used in this area to use EnumClassFlag functions.
#jira UE-122204
[at]will.damon,  [at]Krzysztof.Narkowicz
#rb will.damon,  Krzysztof.Narkowicz

#ROBOMERGE-SOURCE: CL 17283075 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v861-17282326)

[CL 17283085 by richard wallis in ue5-release-engine-test branch]
2021-08-24 05:51:25 -04:00
charles derousiers
3e4e105305 Fix TSR separated translucency output permutation when seperate translucency inputs is invalid.
#rb guillaume.abadie
#preflight 611100686c6eb00001fc3135

#ROBOMERGE-SOURCE: CL 17101808 via CL 17101819
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v853-17066230)

[CL 17101827 by charles derousiers in ue5-release-engine-test branch]
2021-08-09 10:04:37 -04:00
guillaume abadie
8fbb605278 Turns on r.TSR.Translucency.SeparateTemporalAccumulation by default
#rb none
#preflight none

#ROBOMERGE-SOURCE: CL 17066701 via CL 17066712
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v853-17066230)

[CL 17066719 by guillaume abadie in ue5-release-engine-test branch]
2021-08-05 06:44:37 -04:00
guillaume abadie
7070709495 Fixes SSR alignment issues
#rb none
#preflight 6102e64403d30300016e972e

#ROBOMERGE-SOURCE: CL 16998371 via CL 16998380
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v838-16927207)

[CL 16998388 by guillaume abadie in ue5-release-engine-test branch]
2021-07-29 13:49:02 -04:00
guillaume abadie
fe9029a607 Makes r.TSR.Translucency.SeparateTemporalAccumulation=1 production ready
#rb none
#preflight 610036ddbb81a50001d53242

#ROBOMERGE-SOURCE: CL 16970408 via CL 16972240
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v838-16927207)

[CL 16972406 by guillaume abadie in ue5-release-engine-test branch]
2021-07-27 15:36:37 -04:00
guillaume abadie
c73fd2f94b Implements r.TSR.Velocity.WeightClampingPixelSpeed
#rb none

#ROBOMERGE-SOURCE: CL 16885643 via CL 16913556
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)

[CL 16913802 by guillaume abadie in ue5-release-engine-test branch]
2021-07-21 15:22:43 -04:00
guillaume abadie
d5f64bf59d Implements FTSRHistory
#rb none

#ROBOMERGE-SOURCE: CL 16838608 via CL 16840126
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)

[CL 16840246 by guillaume abadie in ue5-release-engine-test branch]
2021-07-13 14:26:09 -04:00
guillaume abadie
0ad856e1f8 Implements r.TSR.Translucency.SeparateTemporalAccumulation prototype
#rb none

#ROBOMERGE-SOURCE: CL 16828318 via CL 16828346
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v836-16769935)

[CL 16828357 by guillaume abadie in ue5-release-engine-test branch]
2021-07-12 14:15:42 -04:00
richard wallis
2241e4ecf0 Fix texture atomic emulation on texture backed buffers to enable temporal super sampling macOS. Removes spvLinearTextureAlignmentOverride that created function specialisation that we don't have support for and would need to work round. Added ElementRowPitch to spvBufferSizeConstants as texture bytes per row have to be aligned. This means spvBufferSizeConstants now has a stride of 3 * uint32.
#jira UE-113030
[at]will.damon, [at]lukas.hermanns, [at]guillaume.abadie
#rb will.damon,  lukas.hermanns,  guillaume.abadie

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

[CL 16782186 by richard wallis in ue5-release-engine-test branch]
2021-06-25 05:51:20 -04:00
guillaume abadie
1b502fd981 Implements r.AntiAliasingMethod
#rb none
#preflight 60d33c8cd9586b000132acac

#ROBOMERGE-OWNER: guillaume.abadie
#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 16758022 via CL 16758023
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v835-16672529)
#ROBOMERGE-CONFLICT from-shelf

[CL 16758219 by guillaume abadie in ue5-release-engine-test branch]
2021-06-23 11:54:40 -04:00
guillaume abadie
f89359315a Implements TSR's spatial anti-aliasing for history rejection
#rb none

#ROBOMERGE-SOURCE: CL 16744212 via CL 16744225
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v835-16672529)

[CL 16744241 by guillaume abadie in ue5-release-engine-test branch]
2021-06-22 12:07:46 -04:00
guillaume abadie
a4a2ecdbb3 Separates TSR source code from TAA
#rb none
[FYI] wei.liu

#ROBOMERGE-SOURCE: CL 16621853 via CL 16621862
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v830-16605563)

[CL 16621870 by guillaume abadie in ue5-release-engine-test branch]
2021-06-10 08:42:48 -04:00