Commit Graph

936 Commits

Author SHA1 Message Date
ionut matasaru
6ea6262a9f Fixed Horde issue #220116 and issue #220129 (using ELLMTag enum when LLM is not enabled).
#rb trivial
#preflight skip
#lockdown mark.lintott

[CL 22329055 by ionut matasaru in ue5-main branch]
2022-10-04 08:34:24 -04:00
ionut matasaru
b741717ed1 [Insights] Added memory tracing for D3D11 and D3D12 (using the "video memory" root heap / address space) to match LLM stats.
#jira UE-164478
#rb Kenzo.Terelst
#preflight 633b0db63629a1a4f9228da3

[CL 22323403 by ionut matasaru in ue5-main branch]
2022-10-03 21:14:32 -04:00
mihnea balta
3942675610 Perform driver version checks before initializing the RHI device.
The driver version is logged and checked after the RHI instance is created, before calling GDynamicRHI->Init(). This worked on D3D11 and 12 without many changes because those RHIs select the adapter before the Init call, so they can fill in the information necessary for GetGPUDriverInfo() before Init. However, the Vulkan RHI init code had to be restructured quite a bit to do the same thing.

Also removed some obsolete hardcoded driver version checks from the Vulkan RHI, since we have better checks in RHIDetectAndWarnOfBadDrivers().

#rnx
#preflight https://horde.devtools.epicgames.com/job/632b408b7b582f58abce036e

[CL 22305628 by mihnea balta in ue5-main branch]
2022-10-03 11:35:55 -04:00
luke thatcher
ff6fb42c72 Fix clang compile error
#rb none
#preflight skip
#jira none

[CL 22262798 by luke thatcher in ue5-main branch]
2022-09-29 23:43:32 -04:00
luke thatcher
0c5c2b3e27 Merging //UE5/Dev-ParallelRendering (up to CL 22203289) to //UE5/Release-5.1
This change includes significant refactor work performed in //UE5/Dev-ParallelRendering. A brief summary of the work is as follows:

Refactored RHI command lists
 - Removal of the "immediate" async compute command list
 - Introduced an "active pipe" on each command list, allowing RHICmdLists to record work for either graphics or async compute. Pipes can be selected using the SwitchPipeline() function, or the FRHICommandListScopedPipeline helper.
 - New explicit command list submission RHI API (RHIFinalizeContext, RHISubmitCommandLists). The IRHICommandContextContainer type has been removed.
 - Explicit GPU submission is automatically appended to the immediate command list when it is dispatched to the RHI thread.

Platform RHI implementations
 - The new submission API has been implemented across all platforms. Some platforms required a significant refactor.

#rb Mihnea.Balta,Kenzo.Terelst
#jira UE-139550
#preflight 6332e3641003050806d802ef

[CL 22239063 by luke thatcher in ue5-main branch]
2022-09-28 21:40:05 -04:00
benjamin rouveyrol
756b664c35 change log verbosity for SetColorSpace1 since it can happen frequently in editor
#jira none
#rb eric.mcdaniel
#preflight 6328629a7436146514285d29

[CL 22086472 by benjamin rouveyrol in ue5-main branch]
2022-09-19 21:18:35 -04:00
zach bethel
d607384103 Added debug logging for streamable textures to D3D11 to catch invalid args from streamable asset.
[REVIEW] Elizabeth.Bunner

[CL 22084509 by zach bethel in ue5-main branch]
2022-09-19 19:45:11 -04:00
Thomas Engel
f389bb820a Adding HDR playback capabilities to MediaFrameWork & Electra (PC, GDK, PS4, PS5)
#jira UE-163865
#fyi jens.petersam
#preflight 632357cdc225e8be3809214e

[CL 22034307 by Thomas Engel in ue5-main branch]
2022-09-15 14:30:21 -04:00
benjamin rouveyrol
1c50f5565d Allow HDR to be enabled by default in editor: One needs to set:
Editor.HDRSupport=1
r.AllowHDR=1
bUseHDRDisplayOutput=True (in the game user settings) or r.HDR.EnableHDROutput=1

#jira UE-161417
#preflight 6321fc098838676d104cd290
[REVIEW] David.Harvey eric.renaudhoude mihnea.balta

[CL 22031753 by benjamin rouveyrol in ue5-main branch]
2022-09-15 13:05:33 -04:00
Andriy Tylychko
6b7a075ba7 FCoreDelegates cleanup: removed delegate macros
#preflight 632072f947741a7dbd03e2c1
#rb steve.robb

[CL 21981540 by Andriy Tylychko in ue5-main branch]
2022-09-13 09:08:26 -04:00
elizabeth baumel
b69514324c LLM was tracking all buffer types as "Meshes" in d3d11. Remove that tracking so the Meshes tag shows a comparable amount of memory usage as it does in d3d12.
#jira UE-151368
#rb christopher.waters
#preflight 631fb07980642a7fa78f244a

[CL 21974401 by elizabeth baumel in ue5-main branch]
2022-09-12 18:37:13 -04:00
bryan sefcik
07894f4a07 Removed redundant private include paths from build.cs files.
Fixed include paths to be relative to the private or public folders.
Hid or removed includes that reached into other private module folders.
Updated PublicInclude paths when necessary.

#jira
#preflight 631a717cec45fbf3d74d4ba7

[CL 21916033 by bryan sefcik in ue5-main branch]
2022-09-09 00:53:22 -04:00
bryan sefcik
cb0456c6d4 Cleaned up build.cs files by removing any include paths that were already being added by UBT. This was done to help identify how include paths are being added and to help with future refactoring.
#jira
#preflight 631a5c04967ffc68fbf0dd8f

[CL 21911226 by bryan sefcik in ue5-main branch]
2022-09-08 21:44:02 -04:00
jason hoerner
16c6a37fa6 Scene capture: Lumen support for Scene Capture 2D, Lumen cache resolution adjustment, Texture Editor displays GPU memory usage for Scene Capture 2D
By default Lumen is disabled for Scene Capture to save memory, but can be enabled via post process override settings.  The memory usage display was important when adding this feature, to give feedback to the user of the memory impact for enabling Lumen.  It's also just generally useful besides.  Lumen costs 340 MB to enable if view specific Lumen scene data is enabled at low quality (half resolution page buffer), or 640 MB at high quality (full resolution page buffer).  Besides memory statistics in the Texture Editor, there is an editor specific command which dumps per-resource sizes to log (r.SceneCapture.DumpMemory), useful for investigating where the memory is going.

Lumen requires persistent state to function properly, so Lumen is disabled if bCaptureEveryFrame and bAlwaysPersistRenderingState are both false.  I decided not to allow Lumen for Scene Capture Cube, due to high memory cost, poor CPU performance, and lighting seams across the faces.  I'm hoping in the future to run Scene Capture Cube as a single scene render call (effectively 6-way split screen for the 6 cube map faces), and have certain rendering passes run as a single omnidirectional pass.  Perhaps Lumen could use a single radiance cache for all 6 faces, rather than 6 separate caches, reducing memory, significantly improving performance, and hopefully solving lighting seams.

I rounded out the set of functions that handle per-view VSM and Lumen caches, to include functionality to remove the caches (necessary to allow the per-view Lumen cache to be toggled back off), and query their presence.

#jira UE-148665
#rb Krzysztof.Narkowicz Daniel.Wright zach.bethel
#preflight 6307cf561615ec0db52700e3

[CL 21594503 by jason hoerner in ue5-main branch]
2022-08-26 13:59:08 -04:00
Jeff Fisher
773631b6f9 UE-147894 Delete WMR
-Remove the deprecated WindowsMixedReality and AzureSpatialAnchorsForWMR plugins.
#jira UE-147894
#review-21507768
#rb Robert.Srinivasiah
#preflight 630554dc5a5d4e46243727f3

[CL 21523822 by Jeff Fisher in ue5-main branch]
2022-08-23 18:49:58 -04:00
zach bethel
8ab457cda8 Removed erroneous IsInRenderingThread check.
#ROBOMERGE-OWNER: zach.bethel
#ROBOMERGE-AUTHOR: zach.bethel
#ROBOMERGE-SOURCE: CL 21339678 via CL 21339980 via CL 21340123 via CL 21340198
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21342681 by zach bethel in ue5-main branch]
2022-08-11 15:30:30 -04:00
zach bethel
77db992ee9 Moved bulk of uniform expression updates off the render thread.
#preflight 62f45631b66d5d9313764c71
#rb christopher.waters, laura.hermanns

#ROBOMERGE-OWNER: zach.bethel
#ROBOMERGE-AUTHOR: zach.bethel
#ROBOMERGE-SOURCE: CL 21337201 via CL 21337213 via CL 21337837 via CL 21337993
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21341203 by zach bethel in ue5-main branch]
2022-08-11 14:24:55 -04:00
christopher waters
3c1c273168 Backing out Aftermath update as it's causing GPU crashes on some users' machines.
[Backout] - CL21321503
#fyi christopher.waters
Original CL Desc
-----------------------------------------------------------------
Updating Aftermath to version 2.18

#jira none
#rb jeannoe.morissette
#preflight 62f3d03d3f500fb6dc383b49

[CL 21339377 by christopher waters in ue5-main branch]
2022-08-11 13:12:56 -04:00
Sebastien Hillaire
376946ae13 Fixed bad bIs24BitUnormDepthStencil on some platforms to fix manual depth test.
#preflight https://horde.devtools.epicgames.com/job/62f4f7e2ad3bd8ad64106d26
#rb charles.derousiers
#fyi luke.thatcher

[CL 21334899 by Sebastien Hillaire in ue5-main branch]
2022-08-11 09:03:51 -04:00
christopher waters
19f3752328 Updating Aftermath to version 2.18
#jira none
#rb jeannoe.morissette
#preflight 62f3d03d3f500fb6dc383b49

[CL 21321503 by christopher waters in ue5-main branch]
2022-08-10 13:10:41 -04:00
mihnea balta
28bd13399b Report creation parameters when buffer creation fails in D3D11.
#rb Luke.Thatcher
#rnx
#preflight none

#ROBOMERGE-AUTHOR: mihnea.balta
#ROBOMERGE-SOURCE: CL 21316119 via CL 21316130 via CL 21316133 via CL 21316306
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21317421 by mihnea balta in ue5-main branch]
2022-08-10 09:44:39 -04:00
mihnea balta
d46ae6a796 Fixed typo in log message.
#rnx
#rb trivial
#preflight no

#ROBOMERGE-AUTHOR: mihnea.balta
#ROBOMERGE-SOURCE: CL 21163413 via CL 21169400 via CL 21170157
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21183704 by mihnea balta in ue5-main branch]
2022-07-20 12:54:32 -04:00
Arciel Rekman
718087f5e4 Fix CIS issues with viewport array initialization.
#rb none
#jira none
#preflight none

[CL 21163486 by Arciel Rekman in ue5-main branch]
2022-07-19 12:02:36 -04:00
Arciel Rekman
09175d79ea Multi-viewport on PC (D3D11/12, Vulkan).
- RHISupportsMultiviewport made to work on relevant shader platforms.
- RHISetStereoViewport implemented
- Unused outputs removal fixed to always consider viewport index used.
- Renamed confusing terminology (multiview -> multiviewport).
- Added a CVar (vr.MultiViewport) to force disable
- Added a canvas output to know the method in non-Shipping

#jira UE-151349
#review @Robert.Srinivasiah, @Jules.Blok, @JeanNoe.Morissette
#rb Robert.Srinivasiah, Jules.Blok, Chris.Waters
#preflight 62d193c43b057e727491c9d2

[CL 21153050 by Arciel Rekman in ue5-main branch]
2022-07-18 17:31:15 -04:00
mihnea balta
3cd870d9e4 Show buffer name in assert message when trying to create empty buffers.
#rnx
#rb trivial
#preflight no

#ROBOMERGE-AUTHOR: mihnea.balta
#ROBOMERGE-SOURCE: CL 21106372 via CL 21106542 via CL 21106559
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21107559 by mihnea balta in ue5-main branch]
2022-07-15 05:33:54 -04:00