Commit Graph

279 Commits

Author SHA1 Message Date
dave belanger
e59338fcbb Add PluginUtils::FindLoadedPlugin
PluginUtils::LoadPlugin improvements and API cleanup:
- Add SynchronousAssetsScan and OutAlreadyLoaded params
- Make all loading options false by default (caller opts-in on whatever it wants instead of opting out on some)
- Put OutFailReason in the loading param struct
- Deprecate MountPlugin API and rename it LoadPlugin to mirror UnloadPlugin terminology
#rb Rex.Hill
#preflight 61a8fc58e8314ee7b598f55d

#ROBOMERGE-AUTHOR: dave.belanger
#ROBOMERGE-SOURCE: CL 18358835 via CL 18364441 via CL 18364493 via CL 18364530 via CL 18434167 via CL 18435484
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v897-18405271)

[CL 18436249 by dave belanger in ue5-release-engine-test branch]
2021-12-10 18:33:00 -05:00
guillaume abadie
0991e33a50 Works arround 3min long iteration time regression on -run=CookGlobalShaders -platform=Windows -stage -SkipAssetScan
Change 17815600 causes to skan the project's asset directory early at launch of the editor

#rb none
#lockdown Andrew.Firth
#preflight 616ad7a46320900001ead891
[FYI] Jon.Nabozny, Jeff.Farris, Josh.Adams, Andrew.Firth

#ROBOMERGE-AUTHOR: guillaume.abadie
#ROBOMERGE-SOURCE: CL 17838403 via CL 18003457 via CL 18369460 via CL 18369543
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18369592 by guillaume abadie in ue5-release-engine-test branch]
2021-12-03 12:53:54 -05:00
jon nabozny
592f856ae7 Precache a list of all available INI files for the project when mounting plugins.
This reduces the number of system calls to determine if INI files exist, which significantly reduces mounting time for plugins.

[at]Jeff.Farris [at]Josh.Adams [at]Andrew.Firth
#changelist validated
#lockdown Andrew.Firth
#preflight 616706112faeee0001473067

#ROBOMERGE-AUTHOR: jon.nabozny
#ROBOMERGE-SOURCE: CL 17815600 via CL 18002064 via CL 18368473 via CL 18368562
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18368613 by jon nabozny in ue5-release-engine-test branch]
2021-12-03 10:24:09 -05:00
dave belanger
6e78472a95 Don't change the plugin search path when mouting a plugin with an explicit uplugin file name (unless it's requested to update the search path of the project)
This removes a costly RefreshPluginList call and prevents poluting the plugin manager with plugins we want to forget about once they are unloaded
#rb Rex.Hill
#preflight 61a544252e4ffe1898215b2a

#ROBOMERGE-AUTHOR: dave.belanger
#ROBOMERGE-SOURCE: CL 18320157 via CL 18322152 via CL 18323414 via CL 18323506 via CL 18323895 via CL 18323955
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18323983 by dave belanger in ue5-release-engine-test branch]
2021-11-30 09:00:22 -05:00
aurel cordonnier
a6e741e007 Merge from Release-Engine-Staging @ 17915896 to Release-Engine-Test
This represents UE4/Main @17911760, Release-5.0 @17915875 and Dev-PerfTest @17914035

[CL 17918595 by aurel cordonnier in ue5-release-engine-test branch]
2021-10-25 20:05:28 -04:00
aurel cordonnier
a12d56ff31 Merge from Release-Engine-Staging @ 17791557 to Release-Engine-Test
This represents UE4/Main @17774255, Release-5.0 @17791557 and Dev-PerfTest @17789485

[CL 17794212 by aurel cordonnier in ue5-release-engine-test branch]
2021-10-12 21:21:22 -04:00
ben zeigler
47ae005a33 Fix game feature issue with previous checkin, the game feature code was still looking for the old plugin location so it would end up writing out a corrupted partial ini to the saved folder
Remove code that was stripping Base and Engine as it could have other similar side effects in out of date config code
This code might need further updates for UE5, the only reason it worked before was because it was depending on the fact that Find would create a nonsaveable config file when passed a bad key
[CODEREVIEW] michael.noland
#rb none

#ROBOMERGE-SOURCE: CL 16962667 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v838-16927207)

[CL 16962687 by ben zeigler in ue5-release-engine-test branch]
2021-07-26 19:32:35 -04:00
ben zeigler
56e2b8afef Add GetConfigFilename to config cache that handles going from either Engine or CustomSystem to the right key filename
Fix spelling error and comments while I'm already modifying this code
Change calling sites that were doing this manually to use new function, and fix a bad merge in the plugin code
Add logic to strip Base and Default prefixes from plugin config overrides, as the old behavior with Find instead of FindConfigFile lead to that sometimes working by accident
I may update the handling of Base/DefaultPluginName.ini in a separate checkin to make that more consistent
#rb josh.adams

#ROBOMERGE-SOURCE: CL 16959529 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v838-16927207)

[CL 16959549 by ben zeigler in ue5-release-engine-test branch]
2021-07-26 15:01:13 -04:00
michael noland
3fc679217d Fixed some typos in the comment for bHasExplicitPlatforms
#rnx

#ROBOMERGE-SOURCE: CL 16752201 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v835-16672529)

[CL 16752206 by michael noland in ue5-release-engine-test branch]
2021-06-22 20:36:48 -04:00
aurel cordonnier
02c0f425e8 Copy up from Release-Engine-Staging @ 16738359
This represents UE4/Main @ 16738161 and Dev-PerfTest @ 16737719

[CL 16738582 by aurel cordonnier in ue5-release-engine-test branch]
2021-06-22 00:27:54 -04:00
David Harvey
e581358a11 Add HasExplicitPlatforms property to uplugin definitions, allowing the SupportedTargetPlatforms and WhitelistPlatforms fields to be entirely defined in child plugins. The existing functionality means that an empty platform list implies "all platforms".
#jira UECON-417
#rb ben.marsh

[CL 16531379 by David Harvey in ue5-main branch]
2021-06-02 04:27:26 -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
SDGNelson
548f653825 PR #8043: Fix DisableEnginePluginsByDefault inconsistency between ProjectDescriptor.cpp and ProjectDescriptor.cs (Contributed by SDGNelson)
#jira UE-115938
#rb none

#ROBOMERGE-SOURCE: CL 16440410 in //UE4/Release-4.27/... via CL 16440430
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Staging) (v814-16434418)

[CL 16440460 by SDGNelson in ue5-release-engine-staging branch]
2021-05-24 16:54:11 -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
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
Matt Peters
dcdbf940fa #jira UE-106431
Do not log an error if LoadModulesForEnabledPlugins is called multiple times in a row on the same phase, since this occurs for PreEarlyLoadingScreen.
#rb Graeme.Thornton
#robomerge Release-5.0-EarlyAccess
#rnx

[CL 15900315 by Matt Peters in ue5-main branch]
2021-04-02 07:32:21 -04:00
michael noland
57beb168bf Added an event for when plugins are edited and fixed some comments in IPluginManager.h
[CODEREVIEW] lauren.barnes
#jira UE-107640

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

[CL 15871783 by michael noland in ue5-main branch]
2021-03-31 01:35:03 -04:00
ionut matasaru
6e00b66460 Fixed duplicated "ConfigureEnabledPluginForCurrentTarget" cpu timer and added few more SCOPED_BOOT_TIMING in FPluginManager::ConfigureEnabledPlugins().
#rb Danny.Couture

[CL 15623504 by ionut matasaru in ue5-main branch]
2021-03-05 08:51:11 -04:00
michael noland
d8c9dfb121 Plugin editing refactors, game feature UX improvements
- Added a new plugin key BuiltInInitialFeatureState for game feature plugins to replace the three separate booleans (the old bools are still supported if this key is missing)
- Added a link from the game feature data editor to get to the plugin editor for the associated plugin
- Added display of initial plugin state to the game feature data editor
- Added a so-so mechanism to extend the plugin descriptor editor from other plugins
- Used this to allow editing the initial state for game feature plugins

#jira UE-107640
#jira UE-107643

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

[CL 15550178 by michael noland in ue5-main branch]
2021-02-27 03:58:53 -04:00
Marc Audy
9753392e2b Merge UE5/RES CL# 15462083 to UE5/Main
This represents UE4/Main @ 15414221

[CL 15463811 by Marc Audy in ue5-main branch]
2021-02-18 18:13:28 -04:00
Marc Audy
cac1fe0019 Merge UE5/Release-Engine-Staging @ CL# 15299266 to UE5/Main
This represents UE4/Main @ CL# 15277572

[CL 15299962 by Marc Audy in ue5-main branch]
2021-02-03 14:57:28 -04:00
Josh Adams
af3a1d561c - Fixed support for a project with all platforms supported, but with a Platforms subdirectory, would treat those Platforms as the onjly supported platforms
#rb jimmy.andrews
#fyi jordan.hartman

[CL 15287351 by Josh Adams in ue5-main branch]
2021-02-02 19:58:51 -04:00
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