Commit Graph

147 Commits

Author SHA1 Message Date
Matt Peters
e3cba2cc3a Add IPluginmanager::GetLastCompletedLoadingPhase to support registering with OnLoadingPhaseComplete only if required loading phase has not yet happened.
#b Graeme.Thornton
#rnx

[CL 15076914 by Matt Peters in ue5-main branch]
2021-01-13 20:49:35 -04:00
Marc Audy
bf80889353 UE5/Release-Engine-Staging to UE5/Main
This represents UE4/Main up to CL# 14958402

[CL 15028197 by Marc Audy in ue5-main branch]
2021-01-08 19:56:07 -04:00
Marc Audy
ada7c144fa Merge //UE5/Release-Engine-Staging @14903491 to //UE5/Main
[CL 14906022 by Marc Audy in ue5-main branch]
2020-12-11 14:21:20 -04:00
Marc Audy
a7f9391231 Merge UE5/Release-Engine-Staging @ 14811410 to UE5/Main
This represents UE4/Main @ 14768117

For ReleaseObjectVersion.h
#lockdown Marcus.Wassmer

[CL 14811440 by Marc Audy in ue5-main branch]
2020-11-24 18:42:39 -04:00
Marc Audy
68150e0be7 Merge UE5/Release-Engine-Staging to UE5/Main @ 14611496
This represents UE4/Main @ 14594913

[CL 14612291 by Marc Audy in ue5-main branch]
2020-10-29 13:38:15 -04:00
Josh Adams
9095055d88 - Fixed up some known config file issues (no longer need to manually manage known config names in UObject::GetConfigName)
[CL 14573786 by Josh Adams in ue5-main branch]
2020-10-26 09:29:34 -04:00
Marc Audy
4c1bb11c29 Merge UE5/Release-Engine-Staging to UE5/Main @ 14548662
This represents UE4/Main @ 14525125 + cherrypicked fixes
#skipundocheck

[CL 14551026 by Marc Audy in ue5-main branch]
2020-10-22 19:19:16 -04:00
Marc Audy
50a3d7d368 Merge Release-Engine-Staging to Main @ CL# 14467590
This represents UE4/Main @ 14432125 + some cherrypick fixes

[CL 14468207 by Marc Audy in ue5-main branch]
2020-10-09 22:42:26 -04:00
geoff evans
68300df094 Jira: Opening the Project Settings for Fortnite causes a noticeable hitch in the editor
Remove CreateIfNotFound parameter to FConfigCacheIni::Find.

This was creating thousands of fstat calls peeking for the existence of Saved/Config/WindowsEditor/GameplayTagsEditorState.ini when opening the Project Settings dialog. This we make frequent calls (in a recursive manner) into the config system, but no file or config is created (where false is passed), and we keep statting it thousands of times

Callers that pass false for this fail to land on any config properties because they don't exist to begin with.

Callers that pass true for this still basically get what they want. Since we did not stub the file out upon Find(), there is no disk state difference between Find() and config system shutdown (where dirty config files are saved to disk). So saving is still manual, and there is no implication from
CreateIfNotFound communicated to the FConfigFile about whether it is meant to be saved or not. So by and large this semantic is meaningless except with the existence of the new config file of the config file map (which creates the optimization of skipping the subsequent stats).

SSettingsEditor::ReloadCategories before: 2290ms
SSettingsEditor::ReloadCategories after: 1669ms

Tested with a BuildCookRun of ShooterGame, and running with it in Editor for a few days.

#jira UE-95853

[CL 14258235 by geoff evans in ue5-main branch]
2020-09-03 19:07:58 -04:00
Marc Audy
7379fa99c5 Merging //UE5/Release-Engine-Staging to Main (//UE5/Main) @ 14229157
[CL 14233282 by Marc Audy in ue5-main branch]
2020-09-01 14:07:48 -04:00
Marc Audy
a7c9001a94 Merging //UE5/Release-Engine-Staging to Main (//UE5/Main) @ 14075166
#rb
#rnx

[CL 14075271 by Marc Audy in ue5-main branch]
2020-08-11 01:36:57 -04:00
Marc Audy
11f5b21210 Merging //UE5/Release-Engine-Staging @ 13752110 to Main (//UE5/Main)
#rnx

[CL 13753156 by Marc Audy in ue5-main branch]
2020-06-23 18:40:00 -04:00
Matt Kuhlenschmidt
603a4119c5 Fix HAL/PlatformFileManager.h non-portable casing CIS issues
#rb none

[CL 13214257 by Matt Kuhlenschmidt in ue5-main branch]
2020-05-06 17:58:18 -04:00
josh adams
90ff579ecc - UBT/C++ changes needed for new Restricted locations
- Does not have the changes for new .ini file locations
#rb ben.marsh

#ROBOMERGE-SOURCE: CL 12676628 via CL 12676630 via CL 12676633
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v675-12543919)

[CL 12676637 by josh adams in Main branch]
2020-04-08 15:07:46 -04:00
danny couture
d1373f79a0 Optimize directory iterations on startup
- Plugin discovery
    - 560ms to 50ms (warm cache)
    - 3.3s to 365ms (cold cache)
  - Source file discovery
    - 102ms to 23ms (warm cache)
    - 253ms to 41ms (cold cache)

  - Cold cache = Cleared standby pages, mostly equivalent to a reboot
  - Warm cache = 2nd run of 2 consecutive runs

#rnx
#rb Steve.Robb

#ROBOMERGE-SOURCE: CL 12670961 via CL 12670966 via CL 12670968
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v675-12543919)

[CL 12672058 by danny couture in Main branch]
2020-04-08 10:12:11 -04:00
bob tellez
0f04c2631a #UE4 Add fallback if the target info doesnt contain known paths in the plugin manager. The target file is assumed to be either in the project or engine folder, preferring project
#ROBOMERGE-SOURCE: CL 12382316 via CL 12394568
#ROBOMERGE-BOT: (v671-12333473)

[CL 12394654 by bob tellez in Release-Engine-Staging branch]
2020-03-24 18:49:59 -04:00
josh adams
72af803c6a - Fixed up the whitelist/blacklist logic of child plugins. It was incredibly broken before, where in non-staged builds (UnrealPak was one), the host platform would be blacklisted by a random child plugin
#rb ben.marsh,david.harvey
#jira UE-90679


#ROBOMERGE-SOURCE: CL 12371365 via CL 12371367
#ROBOMERGE-BOT: (v671-12333473)

[CL 12371368 by josh adams in Main branch]
2020-03-23 11:21:00 -04:00
bob tellez
7dff64fb44 #UE4 Write the target-enabled/disabled plugins lists to the target receipt instead of compiling it into the executable in non-monolitic editor builds. This allows them to be used in shared build environments
#rb Ben.Marsh


#ROBOMERGE-SOURCE: CL 12233987 via CL 12241649
#ROBOMERGE-BOT: (v667-12241502)

[CL 12242840 by bob tellez in Main branch]
2020-03-18 07:04:23 -04:00
jamie dale
548af0a8ff Refresh the package localization cache when a plugin is manually mounted via MountPluginFromExternalSource
#ROBOMERGE-SOURCE: CL 12143120 via CL 12143122 via CL 12143123 via CL 12143126
#ROBOMERGE-BOT: (v659-12123632)

[CL 12143127 by jamie dale in Main branch]
2020-03-11 18:26:01 -04:00
ben marsh
ffd2f1ede7 Fix detection of engine modules being out of date.
#rb none
#jira UE-88824, UE-89676

#ROBOMERGE-SOURCE: CL 11658206 in //UE4/Release-4.25/... via CL 11658244
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v656-11643781)

[CL 11658322 by ben marsh in Main branch]
2020-02-27 11:10:22 -05:00
Matt Peters
40f55732ba #jira FORT-236167
[REVIEW]
#rb Graeme.Thornton
Optimize Pak file indices by computing the PathHashIndex in unrealpak rather than using strings at runtime.
This also removes the need to shrink the string indices for performance, which was triggering a bug due to unsynchronized multithreaded access.

#ROBOMERGE-SOURCE: CL 11442058 in //Fortnite/Release-12.00/... via CL 11442063 via CL 11442073 via CL 11442081

[CL 11443295 by Matt Peters in Main branch]
2020-02-14 09:53:05 -05:00
Josh Adams
aa9705149b Copying Private-LoadTimes-4.24 stream to Main. Biggest changes are in Materials/Shader memory freezing.
#rb none

[CL 11282608 by Josh Adams in Main branch]
2020-02-06 13:13:41 -05:00
bob tellez
36a4c66f6d #UE4 Added AddToPluginsList to IPluginManager. This will add a single plugin to the manager, which is more efficient than refreshing the entire list.
#rb Ben.Marsh


#ROBOMERGE-SOURCE: CL 11080030 via CL 11080092
#ROBOMERGE-BOT: (v637-11041722)

[CL 11080108 by bob tellez in Main branch]
2020-01-22 02:40:14 -05:00
ryan durand
0f0464a30e Updating copyright for Engine Runtime.
#rnx
#rb none


#ROBOMERGE-OWNER: ryan.durand
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869210 via CL 10869511 via CL 10869900
#ROBOMERGE-BOT: (v613-10869866)

[CL 10870549 by ryan durand in Main branch]
2019-12-26 14:45:42 -05:00
marc audy
bfcbfc1ffa Allow projects to opt out of having enabled by default engine plugins enabled by specify DisableEnginePluginsByDefault in the uproject. This requires all plugins to be explicitly enabled and prevents upgrades from bringing new plugins in unexpectedly.
#jira


#ROBOMERGE-SOURCE: CL 10772231 via CL 10776004 via CL 10776035
#ROBOMERGE-BOT: (v610-10636431)

[CL 10776057 by marc audy in Main branch]
2019-12-17 16:37:25 -05:00