- Adds an option to not merge skeletal mesh sections sharing the same material during FBX import. This allows you to control visibility at a per-section level without having to give each section a unique material. [Github Pull Request: 9587]
#jira UE-164863
#rb Alexis.Matte, JeanLuc.Corenthin
[CL 26765816 by Brice Criswell in 5.3 branch]
- Implemented the UnsavedAssetTrackers plugin and enabled it by default.
- Added the 'Unsaved' button to the Editor taskbars to display the number of unsaved packages along with a warning icon if warning are associated with one of the unsaved files.
- Updated the 'Save Content' package to display warnings if one of the packages has warnings.
- Added a class to monitor and periodically update the source controlled status of a collection of files/packages.
- Changed the default value of PromptForCheckoutOnAssetModification settings to False because the Unsaved button flow is complementary (and the popup was noisy for OFPA users).
- Updated the changelist window to use the soure control file status monitor.
#jira UE-163734 - Implement the 'Unsaved' Editor Taskbar Button
#rb Patrick.Enfedaque
#preflight 633ae915b12b8af5fde80f7c
[CL 22322224 by patrick laflamme in ue5-main branch]
-Remove the deprecated WindowsMixedReality and AzureSpatialAnchorsForWMR plugins.
#jira UE-147894
#review-21507768
#rb Robert.Srinivasiah
#preflight 630554dc5a5d4e46243727f3
[CL 21523822 by Jeff Fisher in ue5-main branch]
Change summary:
- Updated macro command hotkey config records in base EditorPerProjectUserSettings.ini file to specify the full path for macro graphs.
- Modified FBlueprintSpawnNodeCommands::RegisterCommands() to directly route to macro graph objects rather than doing a search over the full set of loaded BPs.
#jira UE-156306
#rb Nate.Strohmyer
#preflight 62ace2912c6f089ea8e9cdf0
#ROBOMERGE-AUTHOR: phillip.kavan
#ROBOMERGE-SOURCE: CL 20741073 via CL 20741147 via CL 20741231 via CL 20741414 via CL 20742166
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v970-20704180)
[CL 20744223 by phillip kavan in ue5-main branch]
Disable layer bars for Niagara by default
#jira UE-156176
#preflight 62a100222c15d7fe9f63d80d
#rb anderw.rodham, matt.hoffman
[CL 20579637 by Max Chen in ue5-main branch]
Add support for default component transform tracks for TimeOfDaySequences via RelativeLocation, RelativeRotation or RelativeScale3D default property tracks.
#rb none
#preflight 629ac878ec5338fe48de3699
#ROBOMERGE-AUTHOR: lonnie.li
#ROBOMERGE-SOURCE: CL 20499442 via CL 20499444 via CL 20499445
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v954-20466795)
[CL 20499514 by lonnie li in ue5-main branch]
- Adds Asset Type Filters
- Auto Filters Mode
- Updates hotkeys so "F" now frames and "A" filters on/off
- Fixes Issue where scripts were showing up as "None"
- Migrated UI to use a Toolbar which populates from the commands
- Removes CVar and depricated Layout methods
- Added optimizations when changing just the breadth, filters and showing/hiding duplicates or comments
#JIRA UE-152916
#rb Lauren.Barnes
#preflight 629651249d75300f41b818eb
#ROBOMERGE-OWNER: eric.knapik
#ROBOMERGE-AUTHOR: louise.rasmussen
#ROBOMERGE-SOURCE: CL 20444575 via CL 20453017 via CL 20453068 via CL 20453072
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v952-20449836)
[CL 20460708 by eric knapik in ue5-main branch]
This change consists of multiple changes:
Core:
- Deprecation of ANY_PACKAGE macro. Added ANY_PACKAGE_DEPRECATED macro which can still be used for backwards compatibility purposes (only used in CoreUObject)
- Deprecation of StaticFindObjectFast* functions that take bAnyPackage parameter
- Added UStruct::GetStructPathName function that returns FTopLevelAssetPath representing the path name (package + object FName, super quick compared to UObject::GetPathName) + wrapper UClass::GetClassPathName to make it look better when used with UClasses
- Added (Static)FindFirstObject* functions that find a first object given its Name (no Outer). These functions are used in places I consider valid to do global UObject (UClass) lookups like parsing command line parameters / checking for unique object names
- Added static UClass::TryFindType function which serves a similar purpose as FindFirstObject however it's going to throw a warning (with a callstack / maybe ensure in the future?) if short class name is provided. This function is used in places that used to use short class names but now should have been converted to use path names to catch any potential regressions and or edge cases I missed.
- Added static UClass::TryConvertShortNameToPathName utility function
- Added static UClass::TryFixShortClassNameExportPath utility function
- Object text export paths will now also include class path (Texture2D'/Game/Textures/Grass.Grass' -> /Script/Engine.Texture2D'/Game/Textures/Grass.Grass')
- All places that manually generated object export paths for objects will now use FObjectPropertyBase::GetExportPath
- Added a new startup test that checks for short type names in UClass/FProperty MetaData values
AssetRegistry:
- Deprecated any member variables (FAssetData / FARFilter) or functions that use FNames to represent class names and replaced them with FTopLevelAssetPath
- Added new member variables and new function overloads that use FTopLevelAssetPath to represent class names
- This also applies to a few other modules' APIs to match AssetRegistry changes
Everything else:
- Updated code that used ANY_PACKAGE (depending on the use case) to use FindObject(nullptr, PathToObject), UClass::TryFindType (used when path name is expected, warns if it's a short name) or FindFirstObject (usually for finding types based on user input but there's been a few legitimate use cases not related to user input)
- Updated code that used AssetRegistry API to use FTopLevelAssetPaths and USomeClass::StaticClass()->GetClassPathName() instead of GetFName()
- Updated meta data and hardcoded FindObject(ANY_PACKAGE, "EEnumNameOrClassName") calls to use path names
#jira UE-99463
#rb many.people
[FYI] Marcus.Wassmer
#preflight 629248ec2256738f75de9b32
#codereviewnumbers 20320742, 20320791, 20320799, 20320756, 20320809, 20320830, 20320840, 20320846, 20320851, 20320863, 20320780, 20320765, 20320876, 20320786
#ROBOMERGE-OWNER: robert.manuszewski
#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 20430220 via CL 20433854 via CL 20435474 via CL 20435484
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)
[CL 20448496 by robert manuszewski in ue5-main branch]
This resolves a UBT issue where building from Visual Studio/Rider while the editor is running wouldn't automatically change to HotReload mode.
#preflight 626698887e06ec75059f44b8
#jira none
#rb Ben.Marsh, Jonathan.Adamczewski
#lockdown mark.lintott
#ROBOMERGE-AUTHOR: tim.smith
#ROBOMERGE-SOURCE: CL 19901402 in //UE5/Release-5.0/... via CL 19902726
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v942-19904256)
[CL 19904470 by tim smith in ue5-main branch]
- Make FStreamedAudioCacheDerivedDataWorker thread-safe by copying USoundWave members before going async and querying the DDC directly for compressed sound data
- Failure to get streamed chunks from DDC will now try to build asynchronously if allowed to instead of falling back to synchronous behavior by default
- Make LoadZerothChunk launch an async build in editor instead of forcing a wait
- GetNumChunks(), GetChunks() and GetZerothChunkData() will wait on the async build if not finished to return appropriate data to the caller
- Allow DDC fill commandlet to benefit from async build
- Improve cooker logic to reduce waits and avoid preparation of the running platform data during cook if not needed
- Add async sound compiler so that we benefit from its scheduling and ensure sounds are all properly built after a call to FAssetCompilingManager::Get().FinishAllCompilations().
- Protect the streamed audio platform data's AsyncTask property from multi-threaded access
- Can be disabled from editor experimental settings, by ini settings, by cmdline using -asyncsoundwavecompilation=0 or by CVar using Editor.AsyncSoundWaveCompilation=0
- Benchmarks with -DDC-Local-MissTypes=Audio+StreamedAudio on Artemis_Terrain
- 3m52s to 2m03s for map loading
- 8m13s to 2m59s for PIE
#tests
- No binary diff on FN cooked sounds with both recompilation and shared ddc code paths
- All Audio related tests in EngineTest
- As many AudioQA tests as possible
- Lyra -game
#jira UE-142500
#rb Phil.Popp
#preflight 624ee0703661c8f04a3842b8
[CL 19667776 by danny couture in ue5-main branch]