- Fixes new Empty Open World saving a invalid LastLoadedRegion
- Spatial loader adapters created with invalid bounds will not load any actors and ensure on creation
#rb jeanfrancois.dube
#rnx
[CL 25926702 by patrick enfedaque in ue5-main branch]
- Convert HLODLayer.ParentLayer to an object reference instead of a soft object pointer.
- Detect circular HLOD layer parent references now that the entire parent chain is loaded.
- Initial per runtime partition HLODs layer setup for RuntimeHashSet: detect HLOD layer setup changes and update internal partition layers.
#rb sebastien.lussier
[CL 25841413 by jeanfrancois dube in ue5-main branch]
High Level Vision:
https://docs.google.com/document/d/13R4nJ2UNMJZlf6JCjYssFMSY-5CrURazE4tqxW77yBw/edit#heading=h.bpycydduomgi
Details of changes:
Removed "most" references to FStudioAnalytics from Engine code.
Deprecated use of FStudioAnalytics::FireEvent_Loading(), will deprecate FStudioAnalytics in due course.
Added FAnalyticsFlowTracker to the engine code base based on the flow system used in UEFN.
Added explicit DDC Resource and DDC Summary events to track DDC usage by resource type.
Moved common Editor analytics callbacks into EpicStudioAnalytics plugin
Added a variety of delegates to the engine code to so that analytics capture can be defined in the plugin code or within the game code instead of the engine code ( eg. load map, editor initialization, cooking, slow task )
Added JSON serializer for analytics events to provide facility to capture analytics in restriced environments ( eg. UEFN CookWorker ). Though this fetaure is not enabled yet.
This will temporarily break Loading and Cooking analytics for Lyra, ShooterGame, CitySample but not Fortnite or UEFN. The remainder will need to be "fixed up" in UE5/Main once the changes have propogated (stakeholders have been notified)
[FYI] zousar.shaker, devin.doucette, eric.knapik, francis.hurteau
#rb wes.hunt
#preflight 643e45150a5a4b944e603be8
[CL 25083739 by mark lintott in ue5-main branch]
This updates SaveMap to use the same order as SaveCurrentLevel, which seems to address some issues where external actors could be left with invalid references after copying a map (and its actors) via advanced copy.
#preflight 640216d9a726961ed9bdf678
[CL 24511952 by jamie dale in ue5-main branch]
The `QueueStatusUpdate` call happened after a possible `RevertAndReloadPackages` call, which could have invalidated the raw UPackage pointers.
#preflight none
[CL 24499775 by wouter burgers in ue5-main branch]
FORT-570648 - Closing the 'compile errors' dialog leaves you unable to interact with editor
Editor team related changes:
- added 'OnPreMapOpen' delegate to Editor.h, used in FEditorFileUtils::LoadMap to trigger a build check if it is bound. If it returns false we don't open the map
Validation changes:
- Moved build errors check to trigger on 'OnMapLoad' instead of just on project open as this consolidates validation code into the same module and is more reliable (We want to validate devices as close to when they are loaded into memory and offer users a chance to fix)
- Added dialog for validation triggered by 'OnMapLoad' which offers user option to recompile which now fixes issues and is faster than the previous option of reloading the entire project.
- If either dialog chooses to 'cancel' the map is not loaded. The project is opened and the user can attempt to open the level/map again after fixing errors. This seems better than the previous behaviour of closing the project and being forced back to the project open menu.
Minor Changes:
- All related dialog's had their 'close' buttons removed
- This fixes error reported by Phillip Kavan in which a cached 'last successful open' of a project lead to skipping these warning dialogs
#rnx
#rb yiliang.siew
#rb dave.belanger
#rb rex.hill
#rb conan.reis
[FYI] marcus.wassmer
#preflight 63fffd80f43e53f681756e99
[CL 24486810 by jared cotton in ue5-main branch]
If the packages were made writable, instead of FCheckOut, the SourceControlStateChanged event is not broadcasted because the SourceControlProvider was never involved. After saving to disk though, the files have become modified which will be picked up by SourceControl providers like Git or Skein if an FUpdateStatus is performed on them, even if SourceControl is offline (Skein stores the original hashes in a local database, Git does probably something similar).
#preflight none
[CL 24335892 by wouter burgers in ue5-main branch]