Commit Graph

651 Commits

Author SHA1 Message Date
Matt Peters
07a0af0f5b BulkDataRegistry
Updating FVirtualizedUntypedBulkData and textures to use the BulkDataRegistry.
BulkDataRegistry: Add get/put accessors for the cached BulkDataList of packages.
EditorDomain: Move ClassDigests into a global variable that can be shared with BulkDataRegistry.
EditorDomain: Improve performance of GetFileSize by fetching metadata only.
Tickable Cook Objects, for systems used by the cooker that need to be ticked.
Implementation of the the BulkDataRegistry that uses the DDC cache for persistent storage of the BulkDataList.

#rb Devin.Doucette, Paul.Chipchase, Zousar.Shaker

[CL 16768772 by Matt Peters in ue5-main branch]
2021-06-24 00:50:53 -04:00
Matt Hoffman
afdbbebef0 Matinee: Misc cleanup (code comment changes, etc.)
#jira UE-105313
#rb Trivial
#preflight 60cb86666092ba00014e413d

[CL 16708963 by Matt Hoffman in ue5-main branch]
2021-06-17 14:56:54 -04:00
Martin Ridgers
673f7bace4 Reinstate auto-connect for the editor proper. This was previously disabled if the editor was being run as it would interfer with plugins that would create their own store and enable tracing to it.
#rb jb
#rnx

[CL 16704124 by Martin Ridgers in ue5-main branch]
2021-06-17 09:54:58 -04:00
Zousar Shaker
cf116088ae Integrating //UE5/Dev-Cooker @ 16678003 to //UE5/Main (Zousar.Shaker-YEG-0943-Quaternary)
Non-DevIteration_ShooterGame

[CL 16678907 by Zousar Shaker in ue5-main branch]
2021-06-15 16:36:57 -04:00
ben hoffman
e6eb22ca2b Enable the loading of the SubobjectDataInterface in the LaunchEngineLoop
#jira UE-117893
#rb trivial
#rnx

#preflight 60c7b65c86ce7600018f57c4

[CL 16667526 by ben hoffman in ue5-main branch]
2021-06-14 20:06:49 -04:00
aurel cordonnier
e0ad4e25df Merge from Release-Engine-Test @ 16624776 to UE5/Main
This represents UE4/Main @ 16579691 and Dev-PerfTest @ 16579576

[CL 16625248 by aurel cordonnier in ue5-main branch]
2021-06-10 13:13:24 -04:00
brandon dawson
494a7aa301 Do not use a mem mark to globally catch invalid memory use. These are now handled by a check on allocation. This was causing -onethread to fail due to the render thread requiring an empty thread stack. Long term, it might be better to have a render thread speciallization for the mem stack.
[at]kenzo.terelst

#ROBOMERGE-SOURCE: CL 16518911 in //UE5/Private-Frosty/...
#ROBOMERGE-BOT: STARSHIP (Private-Frosty -> Main) (v826-16501804)

[CL 16518932 by brandon dawson in ue5-main branch]
2021-06-01 14:34:10 -04:00
aurel cordonnier
43fa62fcd8 Merge from Release-Engine-Test @ 16487383 to UE5/Main
This represents UE4/Main @ 16445039 and Dev-PerfTest @ 16444526

[CL 16488106 by aurel cordonnier in ue5-main branch]
2021-05-27 13:40:37 -04:00
Devin Doucette
6d584b496f DDC: Ensure that the build system is constructed on launch alongside the cache
#rb Zousar.Shaker
#rnx

[CL 16420709 by Devin Doucette in ue5-main branch]
2021-05-21 12:55:24 -04:00
martins mozeiko
2208dade76 Add context switch and stack sampling trace collection on Windows using ETW
#rb Ionut.Matasaru

[CL 16357198 by martins mozeiko in ue5-main branch]
2021-05-17 15:28:50 -04:00
Arciel Rekman
fb5e240e3b Pregenerate autogen headers for target platforms (UE-115409).
- Will hopefully prevent races between the generation and SCWs.
- Startup impact: ~2ms (when files are up to date) to ~7ms (when they aren't).

#rb Jason.Nadro
#jira UE-115409

[CL 16326113 by Arciel Rekman in ue5-main branch]
2021-05-13 23:29:10 -04:00
ben hoffman
5752ef7448 Add the SubobjectDataInterface to the LaunchEngineLoop for use in Blueprints, Python, and unit tests
#jira UE-64131
#rnx
#rb marc.audy
#preflight 60900d1b6aab1a0001c89047

[CL 16184891 by ben hoffman in ue5-main branch]
2021-05-03 12:23:57 -04:00
paul chipchase
71b969d9c4 Cherrypicking Mirage code base (disabled) from Dev-Cooker
- The mirage specific code is disabled behind the define UE_USE_VIRTUALBULKDATA, this means that some code paths in Texture/Mesh are much more complex than they need to be as we support both old and new paths. Once the system has been turned on and confirmed to cause no issues then this will be stripped out.
- SavePackageUtilities.cpp, SavePackage.cpp and SavePackage2.cpp are editgrates rather than integrations as those files have changes in DevCooker that we don't want to bring over immediately.
- Also includes a prototype system for storing bulkdata in a sidecar file in the workspace domain rather than in the .uasset/.umap file which although has been discontinued as part of mirage, will have applications for future work for non-virtualized projects and/or text based assets.

#rb Patrick.Finegan (all changes have been reviewed when submitted to Dev-Cooker)
#tests Cooking and running ShooterGame/Frosty and other sample programs using megascan assets
#rnx
#preflight  608be50d870cf400013ff99d

[CL 16167285 by paul chipchase in ue5-main branch]
2021-04-30 08:14:54 -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
danny couture
b980229161 Add interface to enforce a better contract for asset compilers
- A single call to FAssetCompilingManager::Get().FinishAllCompilation() is now sufficient to ensure every asset in the editor has finished compiling.
  - Dependencies are now used to determine asset compiler ordering
  - Implement interface and unify some functionality between these assets
    - MeshCards
    - DistanceFields
    - SkeletalMeshes
    - StaticMeshes
    - Shaders
    - Textures

#rb Francis.Hurteau
#preflight 6086d3668de3a6000124c2b0

[CL 16122343 by danny couture in ue5-main branch]
2021-04-27 04:04:14 -04:00
Andriy Tylychko
3481fc0baa added the call to FThreadStats::StopThread() to FEngineLoop::AppExit(). the problem is that StopThread() is called in FEngineLoop::Exit() which is not used in some programs, e.g. BlankProgram, and potentially many programs used it as a template.
StopThread() waits until all stat tasks are executed. Now that we use a pipe instead of StatsThread, the pipe asserts in its destructor if there're any unexecuted tasks. Seems like before unexecuted tasks were just dropped.

[CL 16103643 by Andriy Tylychko in ue5-main branch]
2021-04-23 04:27:44 -04:00
geoff evans
d7560aa976 Add trace scope instrumentation for Editor init and exit
Add trace scope instrumentation for Engine exit

#rb francis.hurteau
#jira none
#preflight 607f54508737300001b14c97

[CL 16067679 by geoff evans in ue5-main branch]
2021-04-20 19:10:58 -04:00
Marc Audy
01b7c9f4f5 Merge UE5/RES @ 15958325 to UE5/Main
This represents UE4/Main @ 15913390 and Dev-PerfTest @ 15913304

[CL 15958515 by Marc Audy in ue5-main branch]
2021-04-08 14:32:07 -04:00
jurre debaare
1b93046ede Hang during editor booting ShooterGame
#fix pre-load animation data controller module, and replace Load with GetModule in AnimSequenceBase::GetController
#rb devin.doucette

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

[CL 15878394 by jurre debaare in ue5-main branch]
2021-03-31 13:47:57 -04:00
jack porter
946b30a59a Remove UE3/UE4 references
#jira UE-112108
#jira UE-111469
#jira UE-111456
#jira UE-111451
#jira UE-111331
#jira UE-111149
#jira UE-111136
#jira UE-110941
#jira UE-104701
#rb trivial
[FYI] Chris.Babcock
#preflight 606446947a99880001b3cbac

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

[CL 15872932 by jack porter in ue5-main branch]
2021-03-31 06:40:14 -04:00
johan berg
7eed4b9b0e [TraceLog] Fix channel presets early initialization
In a previous change TraceAux::Initialize was moved to a point very early in process lifetime. At this point the config system is not ready, so resolving data driven channel presets does not work. To solve this we make two changes, define two presets in code (default and memory) which require very early application, and add a second pass of channel initialization which is executed directly after config system is up.

#rb martin.ridgers

#ROBOMERGE-OWNER: johan.berg
#ROBOMERGE-AUTHOR: johan.berg
#ROBOMERGE-SOURCE: CL 15822904 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v785-15821902)
#ROBOMERGE-CONFLICT from-shelf

[CL 15829754 by johan berg in ue5-main branch]
2021-03-25 15:39:34 -04:00
Marc Audy
0cbbc781ca Merge UE5/Release-Engine-Staging @ 15740152 to UE5/Main
This represents UE4/Main @ 15709114

[CL 15740605 by Marc Audy in ue5-main branch]
2021-03-18 15:20:03 -04:00
Marc Audy
8f73cd7fa9 Merge UE5/Release-Engine-Staging @ 15630841 to UE5/Main
This represents UE4/Main @ 15601601

[CL 15631170 by Marc Audy in ue5-main branch]
2021-03-05 19:27:14 -04:00
jamie dale
68face5e2b Ensure that the localization and internationalization systems shutdown in the correct order
#jira UE-108142
#rb Francis.Hurteau

#ROBOMERGE-SOURCE: CL 15630795 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v777-15581079)

[CL 15630828 by jamie dale in ue5-main branch]
2021-03-05 19:18:15 -04:00
Andriy Tylychko
31c369c3bf Two related parts:
1) TlsAutoCleanup: in the previous version `FTlsAutoCleanup` used `FRunnableThread` to store registered instances and to delete them on `FRunnableThread` destruction. This means that all threads that are not created by `FRunnableThread` (the game thread in particular, and all 3rd-party threads) never delete registered `FTlsAutoCleanup` instances. This change moves the storage from `FRunnableThread` to TLS to cover all threads

Thsi change can break systems that implemented a workaround for this problem, e.g. by manually deleting registered `FTlsAutoCleanup` instances on the game thread exit, as now this instances will be deleted twice. The solution is to remove the workaround and to rely on uniform `FTlsAutoCleanup` behaviour on all threads.

#rb steve.robb

2) removed CpuProfilerTrace workaround to handle the fact that FTlsAutoCleanup leaks on the game thread, as this is fixed by (1).

#rb martin.ridgers

Need to submit both parts together as they need each other

#robomerge Release-5.0-EarlyAccess

[CL 15624597 by Andriy Tylychko in ue5-main branch]
2021-03-05 11:29:40 -04:00