[FYI] Peter.Engstrom
Original CL Desc
-----------------------------------------------------------------
Iris - Object scope hysteresis support. Keep dynamically filtered out objects around for a specified amount of frames. Configure behavior via hysteresis profiles that determine the frame timeout per class. The filter config for a specific class can then mention the hysteresis profile in order to get the appropriate behavior. Config example is present in ReplicationFilteringConfig.h
Note: Hysteresis is enabled by default with a frame count of 6.
#jira UE-209773
#rb LouisPhilippe.Seguin
[CL 33202472 by guillaume arruda in ue5-main branch]
Note: Hysteresis is enabled by default with a frame count of 6.
#jira UE-209773
#rb LouisPhilippe.Seguin
[CL 33195732 by peter engstrom in ue5-main branch]
This addresses bugs that could occur if you cvars had the same name by preventing the behavior altogether.
#jira UE-199033
#jira UE-199092
#rb ben.hoffman, ben.zeigler
[CL 33169890 by graham matuszewski in ue5-main branch]
Add to CommandletsUsingAR to enable async asset registry loading
Add DisablePythonForCommandlet
Built in plugin loading time reduced from 7m to 30s
#rb Jamie.Dale, Matt.Peters
[FYI] serge.bernier, john.huelin
#tests local testing of commandlet
[CL 33108282 by tom holmes in ue5-main branch]
- Fixed the ExportOptions plist files to use "app-store" instead of "app-store-connect" as the latter was only introduced in Xcode15.3 (deprecateding app-store) and does not work in 15.2 or earlier
#rb florin.pascu
[CL 32940301 by josh adams in ue5-main branch]
* Better way to localize (directly in .ini file) the map template.
#rb JeanFrancois.Dube
#jira UE-211347
[CL 32929750 by vincent beauchemin in ue5-main branch]
* Add a way to localize map template from config file.
* Add LocName for Open World and Basic map template.
#rb JeanFrancois.Dube
#jira UE-211347
[CL 32893114 by vincent beauchemin in ue5-main branch]
* Added WorldPartitionBuilder to the CommandletsUsingAR config
* FAssetRegistryImpl::GetRedirectedObjectPath() - Calls done with bNeedsScanning should first test if asset was scanned rather than always performing a scan
* UAssetManager & UObjectLibrary are now using AssetRegistry.IsSearchAllAssets() in order to test whether there's an async AR scan in progress
* FActorDescArchive: Skip calls to FixupRedirectedAssetPath() for native classes
On test project:
* Reaching the end of the World Partition init on a Threadripper: from 8m01s to 4m40s
* Running the HLOD setup job: from 15m13s to 8m50s
#rb jeanfrancois.dube, matt.peters
[CL 32647656 by sebastien lussier in ue5-main branch]
#rb bradley.heath, carles.fernandez, tyler.staples
#tests Tested against Dedicated Server Win64 Cooked Data
[CL 32321776 by matt harris in ue5-main branch]
#rb Martin.Ridgers
#jira UE-189912
#rnx
- When it was added ForceTocFromMountedPaks controlled if we should create .uondemandtoc files when building IAS data and if we should use them at runtime, this was inflexiable for testing purposes so has been split into:
-- engine.ini:[Ias]:CreatePerContainerTocs which controls if we should create the files.
-- engine.ini:[Ias]:UsePerContainerTocs which controls if we should run from the files.
- Both values remain defaulted to off so that the system is only used as opt in.
[CL 31943526 by paul chipchase in ue5-main branch]
::Before::
- Boot -> PIE (6m3s)
- FCoreRedirects::RedirectNameAndValues: 18s
::After::
- Boot -> PIE (5m41s)
- FCoreRedirects::RedirectNameAndValues: 5.3s
- MatchWildcard=true support has been added to how CoreRedirects are defined in INI files. You may now define OldName="...SomeSuffix", OldName="SomePrefix..." or OldName="...SomeSubstring..." to perform string manipulation based matching for redirects, deprecating MatchSubstring=true
- Substring matches are very expensive compared to pure FName matching or even prefix and suffix matching. This expense is problematic since the presence of a substring matching rule can mean that all queries for a particular redirect type, such as package name, will need to perform the substring check even if a substring match is relatively uncommon. To combat this cost, we add a reimplementation of the PM-k, (PredictMatch-8) algorithm. This allows a redirect query to check for substring matches against _all_ possible substrings with a single pass over the redirect query name. The fuzzy matching is designed such that false positives may occur but not false negatives. When a fuzzy match is found we must perform the slow substring match to confirm. However fuzzy matching allows use to dramatically reduce our string scannin. In a case where there were 4 MatchSubstrings, from boot to PIE, we now perform slow substring matches < 0.8% of the time compared to previously.
- Replaces `FString` manipulation during redirect queries to instead use a small wrapper type `FNameUtf8String` which provides a small API to allow for FName comparisons, building and ultimately reducing copies. UTF8 is used since we need to ensure we have an encoding that we can keep the same for storing wildcard strings that will match how we query for wildcard matches. UTF8 is byte efficient for ANSI text, which improves fuzzy match prediction.
==========================================
Substring Stats
Substring Lookups: 24342736
Prediction Hit: 72
Prediction Miss: 213377
==========================================
#jira UE-204063
#rb Matt.Peters
[FYI] Francis.Hurteau
[CL 31941627 by kevin macaulayvacher in ue5-main branch]
Moved the provider cofiguration settings to the StudioTelemetry.Provider.ProviderName section
Added StudioTelemetry global configuration settings to the StudioTelemetry.Config section
[FYI] Wes.Hunt
#rb Wes.Hunt
[CL 31867515 by mark lintott in ue5-main branch]
- You can override this to revert to the previous behavior by specifying -EnableLiveLinkFaceTracking on the command line.
- Modify ARKit module to not bind to its port by default unless specified by the command line
- Move ARKit server binding to its source instead of the module
This fixes an issue where starting two editors would make it impossible for one of them to use the ARKit livelink plugin since only one could bind to the ARKit port.
Moving it to the livelink source allows the user to pick which UE instance should bind the port.
#jira UE-205785
#rb jason.walter
[CL 31820784 by jeremie roy in ue5-main branch]
[REVIEW] [at]michael.atchison [at]michael.kirzinger [at]rafa.lecina [at]evgenii.babinets
#rb michael.atchison
[CL 31700324 by lorry li in ue5-main branch]