Commit Graph

188 Commits

Author SHA1 Message Date
jeremy moore
925a8fe75c Fix some items rendering to a separate velocity pass when base velocity pass is used with r.SelectiveBasePassOutputs.
This logic took primitives with a material using static lighting and moved velocity writing to a second pass.
Seems like that is some old behavior and after asking around it isn't well known why we had it.
Anyway it's not good to pay the cost of that second pass, so removing that.
#preflight 628fd8f574630984fd4d4464

#ROBOMERGE-AUTHOR: jeremy.moore
#ROBOMERGE-SOURCE: CL 20392160 via CL 20392172 via CL 20392182
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)

[CL 20398501 by jeremy moore in ue5-main branch]
2022-05-27 16:44:41 -04:00
john huelin
95c1680b6e Fix DrawCallCount per pass not working when multithreaded RHI command recording is enabled.
[REVIEW]
#rnx

#ROBOMERGE-OWNER: john.huelin
#ROBOMERGE-AUTHOR: john.huelin
#ROBOMERGE-SOURCE: CL 20105654 via CL 20105671 via CL 20107113 via CL 20107146
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20110543 by john huelin in ue5-main branch]
2022-05-09 16:35:01 -04:00
jason hoerner
b19bb6be2f UE5_MAIN: Multi-view-family scene renderer refactor, part 1. Major structural change to allow scene renderer to accept multiple view families, with otherwise negligible changes in internal behavior.
* Added "BeginRenderingViewFamilies" render interface call that accepts multiple view families.  Original "BeginRenderingViewFamily" falls through to this.
* FSceneRenderer modified to include an array of view families, plus an active view family and the Views for that family.
* Swap ViewFamily to ActiveViewFamily.
* Swap Views array from TArray<FViewInfo> to TArrayView<FViewInfo>, including where the Views array is passed to functions.
* FSceneRenderer iterates over the view families, rendering each one at a time, as separate render graph executions.
* Some frame setup and cleanup logic outside the render graph runs once.
* Moved stateful FSceneRenderer members to FViewFamilyInfo, to preserve existing one-at-a-time view family rendering behavior.
* Display Cluster (Virtual Production) uses new API.

Next step will push everything into one render graph, which requires handling per-family external resources and cleaning up singletons (like FSceneTextures and FSceneTexturesConfig).  Once that's done, we'll be in a position to further interleave rendering, properly handle once per frame work, and solve artifacts in various systems.

#jira none
#rnx
#rb zach.bethel
#preflight 625df821b21bb49791d377c9

[CL 19813996 by jason hoerner in ue5-main branch]
2022-04-19 14:45:26 -04:00
marc audy
cd7919c4e7 Correct some inconsistencies with Dev-EngineMerge
#rnx

#ROBOMERGE-AUTHOR: marc.audy
#ROBOMERGE-SOURCE: CL 19531108 in //UE5/Release-Engine-Staging/...
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v937-19513599)

[CL 19532836 by marc audy in ue5-main branch]
2022-03-28 16:31:36 -04:00
jeremy moore
7b99842d94 #jira UE-142312
Fix incompatible serialization of change CVar r.VertexDeformationOutputsVelocity.
Converted it to new CVar r.Velocity.EnableVertexDeformation and added warning if old CVar is found.
#preflight 6206bc15e24662ad5f77634c
#rb andrew.firth
#rnx

#ROBOMERGE-AUTHOR: jeremy.moore
#ROBOMERGE-SOURCE: CL 18959728 in //UE5/Release-5.0/... via CL 18960162 via CL 18960582
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v917-18934589)

[CL 18960699 by jeremy moore in ue5-main branch]
2022-02-11 15:53:08 -05:00
jeremy moore
c406ad3e7e #jira UE-141209
Disable depth pass velocity and fall back to velocity after base pass when MSAA is enabled.
Velocity buffer isn't MSAA'd so can't have a combined depth/velocity pass.
Other than performance (which we can't get if we don't combine depth/velocity) the only reason that we might still want to keep early velocity is to reproject normals for DBuffer decals. But with forward MSAA we don't have a normal buffer available anyway.
#preflight 61fc38fa0a50c2606f2729b0
#rnx

#ROBOMERGE-AUTHOR: jeremy.moore
#ROBOMERGE-SOURCE: CL 18850241 in //UE5/Release-5.0/... via CL 18850311 via CL 18851066
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)

[CL 18851109 by jeremy moore in ue5-main branch]
2022-02-03 16:14:03 -05:00
jeremy moore
5a7d293801 #jira UE-140878
Default r.Decal.NormalReprojectionEnabled to false.
Fix crash when it is set to true in forward rendering.
Fix WPO not writing velocity for case of velocity in depth pass where it isn't a perf win and the behavior is confusing.
#preflight 61fa9d08cc4b837d9c612fd0
#rnx
#lockdown cristina.riveron

#ROBOMERGE-AUTHOR: jeremy.moore
#ROBOMERGE-SOURCE: CL 18827156 in //UE5/Release-5.0/... via CL 18827169 via CL 18827488
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)

[CL 18827509 by jeremy moore in ue5-main branch]
2022-02-02 10:53:10 -05:00
jeremy moore
9d14ee444f #jira UE-140909
Don't skip velocity for view conditions when velocity is in depth pass.
#preflight 61f9e5141d7ca8ed2d640f06

#ROBOMERGE-AUTHOR: jeremy.moore
#ROBOMERGE-SOURCE: CL 18820147 in //UE5/Release-5.0/... via CL 18820168 via CL 18822919
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)

[CL 18825069 by jeremy moore in ue5-main branch]
2022-02-02 08:20:14 -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
jeremy moore
e7d6a26b8b Set default MotionBlurPerObjectSize to 0 so that by default we don't skip velocity for small objects.
#rb guillaume.abadie
#preflight 6143a89c9bba9a0001dd027b
#lockdown michal.valient

#ROBOMERGE-AUTHOR: jeremy.moore
#ROBOMERGE-SOURCE: CL 17550996 via CL 17945644 via CL 18363735 via CL 18363959
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18364053 by jeremy moore in ue5-release-engine-test branch]
2021-12-02 23:09:20 -05:00
josie yang
e240ceff6a Enable velocity rendering when visualize motion blur flag is on
#rb guillaume.abadie

#ROBOMERGE-AUTHOR: josie.yang
#ROBOMERGE-SOURCE: CL 18340488 in //UE5/Release-5.0/... via CL 18340497
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18340507 by josie yang in ue5-release-engine-test branch]
2021-12-01 12:01:48 -05:00
jeremy moore
337d1f888c Improvements to texture debug view modes to help debug VT resolution.
Fix velocity+depth pass being removed in texture debug view modes.
Add [VT] suffix to debug view texture menu entries.
#ushell-cherrypick of 17523592 by Jeremy.Moore

#ROBOMERGE-AUTHOR: jeremy.moore
#ROBOMERGE-SOURCE: CL 17553063 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)

[CL 17553074 by jeremy moore in ue5-release-engine-test branch]
2021-09-17 11:46:21 -04:00
wei liu
44877e5ee0 Fix a bug of rendering multi view on seperate passes on mobile
#jira UE-112988

#rb Dmitriy.Dyomin
#p4v-preflight-copy 17383209

#ROBOMERGE-SOURCE: CL 17403162 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v865-17346139)

[CL 17403191 by wei liu in ue5-release-engine-test branch]
2021-09-02 10:41:50 -04:00
zach bethel
df8d33e90a Fixed velocity texture being cleared for each view rather than once for all views.
#rb trivial

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

[CL 17302280 by zach bethel in ue5-release-engine-test branch]
2021-08-25 10:16:56 -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
krzysztof narkowicz
bb54d82bdd Distance fields:
* Added r.DistanceFields.SupportEvenIfHardwareRayTracingSupported to allow to skip DF scene creation and DF streaming if HWRT is supported. Should be really a run-time switch, but it's something for later. By default set to 1 and everything works as before
* Added ShouldCompileDistanceFieldShaders to share shader compilation conditions between all DF shaders

#rb Patrick.Kelly
[FYI] Patrick.Kelly, Daniel.Wright, Tiago.Costa

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

[CL 16825153 by krzysztof narkowicz in ue5-release-engine-test branch]
2021-07-12 10:24:46 -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
Wei Liu
de5a48902e 1. Fix a bug of missing velocity due to wrong LoadAction for parallel rendering.
2. Add a project setting option to avoid generating velocity and TAA shader unexpectly for mobile platform.

#jira none

#rb Dmitriy.Dyomin, Guillaume.Abadie

[CL 16584354 by Wei Liu in ue5-main branch]
2021-06-08 06:01:07 -04:00
Sebastien Hillaire
b6b471ac1d Fix for velocity not working on ThinTranslucent shading model.
#jira reported via UDN
#rb Kevin.Ortegren

[CL 16533179 by Sebastien Hillaire in ue5-main branch]
2021-06-02 08:36:32 -04:00
Sebastien Hillaire
2e71d41160 Debug indirect lighting probes now write velocity for improved stability.
#rb none

[CL 16466473 by Sebastien Hillaire in ue5-main branch]
2021-05-26 06:26:05 -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
graham wihlidal
54256a5cf3 Change the default of r.BasePassOutputsVelocity to on, so that velocity vectors work out of the box with techniques like Nanite and Lumen that do not currenlty support a separate velocity pass.
[FYI] brian.karis, daniel.wright
#jira UE-106933

#ROBOMERGE-SOURCE: CL 15880599 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v786-15839533)

[CL 15889182 by graham wihlidal in ue5-main branch]
2021-04-01 10:39:59 -04:00
christopher waters
c45f1dfad5 Removing Tessellation:
- Removed Tessellation settings from Materials and Material Interfaces
- Removed Adjacency buffers from Static and Skeletal Meshes.

#jira UE-94564
#rb jeremy.moore, josie.yang, kevin.ortegren, yuriy.odonnell

#ROBOMERGE-OWNER: christopher.waters
#ROBOMERGE-AUTHOR: christopher.waters
#ROBOMERGE-SOURCE: CL 15501023 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v771-15082668)
#ROBOMERGE-CONFLICT from-shelf

[CL 15502653 by christopher waters in ue5-main branch]
2021-02-23 14:03:21 -04:00
Wei Liu
e1dbc67499 Support Desktop TAA with the mobile renderer( reimplement in UE5)
#jira none

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

[CL 15466697 by Wei Liu in ue5-main branch]
2021-02-18 21:11:17 -04:00
daniel wright
bdf3b979a8 Components being moved by editor tracking render velocities correctly
* Added new PrimitiveComponent flag bIsBeingMovedByEditor which is enabled by the editor when it moves an actor through the gizmos.
* Velocity rendering now draws components being moved by the editor on top of the usual Movable components
#rb Matt.Kuhlenschmidt

#ROBOMERGE-SOURCE: CL 15373844 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v771-15082668)

[CL 15373874 by daniel wright in ue5-main branch]
2021-02-09 23:05:37 -04:00