Deprecate GetLastError and replace with FText* output parameters on fallible methods.
Use hierarchy of guard types to document access requirements for internal methods.
Separate cache updates from cache access. Cache updates must be performed explicitly so that read->write lock update and possible preemption is clear.
#rb logan.buchy
[CL 33005243 by robert millar in ue5-main branch]
* Only AddToCollection, RemoveFromCollection, SetColor and Reparent will not commit to perforce server if setting is off
* Creating collections notably must commit otherwise it will not be added to a source control working set
* Tunnelled the behaviour of submitting to SCC through the Internal helper function as it does not have the context to decide what workflow is running.
#rb brooke.hubert, robert.millar
[CL 31892830 by logan buchy in ue5-main branch]
* Moved workflow tracking of collection manipulations up one level to target user interaction only
* Added create/destroy collection workflows
* Remove hand-holding utilities aimed to ease verbosity of telemetry event generation
#rb wes.hunt
#jira UE-155132
#preflight 6463b34f063e77985c259c71
[CL 25492328 by logan buchy in ue5-main branch]
* Uses method of exposing a delegate for telemetry events to be registered by a StudioAnalytic provider implementation to avoid embedding schema in the engine
* Generic templates for RAII scoped timed telemetry events added to aid in generating timed events
#jira UE-155132
#rb Brooke.Hubert Wes.Hunt Ronald.Koppers
#preflight 645022cdee56ca4c247ef92a
[CL 25291458 by logan buchy in ue5-main branch]
Optimized Collection code invoked at each source control update to avoid comparing large set to detect if the in-memory collection is different from the collection on disk.
#rb Julien.StJean
#preflight 6346e2cf663dafe4162e8c9e
[CL 22505265 by patrick laflamme in ue5-main branch]
#ROBOMERGE-AUTHOR: bob.tellez
#ROBOMERGE-SOURCE: CL 18327503 via CL 18327514 via CL 18327529 via CL 18328464 via CL 18328574
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)
[CL 18328663 by bob tellez in ue5-release-engine-test branch]
- Parallelize collection loading in FCollectionManager::LoadCollections
- Parallelize FName registration to cut on hashing cost in Collection::Load
- Leverage FStringView where possible in Collection::Load
- 987ms -> 238ms for collection loading during editor startup
- 987ms -> 696ms with -onethread
#rnx
#tests generated md5 of all loaded collections content before and after the change
#rb Bob.Tellez
#ROBOMERGE-SOURCE: CL 13054205 via CL 13054206 via CL 13054211
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v686-13045012)
[CL 13054213 by danny couture in Main branch]
#rnx
#rb none
#ROBOMERGE-SOURCE: CL 10869240 via CL 10869516 via CL 10869902
#ROBOMERGE-BOT: (v613-10869866)
[CL 10870584 by ryan durand in Main branch]
Some displayed error messages about paths being too long are more informatives and include full path and current/maximum length allowed.
#rb none
[CL 10119068 by Gines Hidalgo in Dev-Editor branch]
Revamped collection UI:
- Uses a more modern design.
- Adds the asset count to the collection view.
- Adds the collections more prominently in asset tooltips.
Revamped sources panel UI:
- Added a unified search for all aspects of the sources panel (paths, favorites, and collections).
- Added a switcher for the paths and collections views, which auto-switches as you browse to paths or collections.
- Collections are now visible by default, rather than hidden behind a View Option.
Improved Content Browser auto-complete:
- Now lists collection and meta-data tag names, as well as the old class names.
- Tokenizes the search terms to allow auto-complete on partial statements.
- Note: Involves some breaking API changes to SAssetSearchBox to allow more complex filtering and auto-complete rules.
Added scripting API support:
- Collections can now be created, destroyed, and manipulated via Python or Editor Utilities (editor-only, see the AssetTagsSubsystem API).
- Collections can be queried both in-editor and at runtime (if cooked).
Added support for optionally "cooking" collections for use at runtime:
- This only works for static collections, and adds their information to the asset registry meta-data.
- See the AssetRegistry settings in BaseEngine.ini (bTagAllCollections, CollectionsToIncludeAsTags, and CollectionsToExcludeAsTags).
- No collections are cooked by default.
#rb Chris.Gagnon
[CL 8847950 by Jamie Dale in Dev-Editor branch]