3 min read

Week 03: Wednesday

42.0k lines changed
166 commits
88 modules
99 devs


Experimental

NNERuntimeIREE AIAssistant UAF AudioProperties DataflowVolumetricPlugin PythonScriptPlugin DefaultInstallBundleManager Workspace


Modules

Engine CoreUObject EngineBuild Core Renderer EngineShaders EngineSource TextureFormatOodle IoStoreOnDemand HordeServer.Build (+38 more)


Plugins

PoseSearch HairStrands LiveLink Mutable PCG ControlRig Niagara Metasound GameplayCameras ReplicationSystemTestPlugin (+15 more)


Commits

b7ca7a9 TrajectoryTools
Trajectory Recording Tool: Show reason for not being able to bake out sequence. Additionally, instead of opening content browser automatically we offer the option to browse to it via the notification.

#rnx
#rb daren.cheng

#Synced-CL 49789214

#Synced-CL 49789214

[CL 49830439 by roland munguia in ue5-main branch]

370afc7 AIAssistant
Added DevOptions to the environment

DevOptions are loaded from the FConfig, and then added to the AgentEnvironmentDescriptor.


#Synced-CL 49665953

[CL 49822017 by alexander ames in ue5-main branch]

12c23a1 NNERuntimeIREE
[NNE] NNERuntimeIREECpu On Windows IREE compiler should be independent of any developer tools/SDKs.

Problem:
When linking IREE compiler outputed object files on Windows to a shared library (DLL), the clang++ driver defaults to MSVC linker and libraries.

Solution:
Provide the libraries and tools to link without MSVC:
- Use the LLVM linker directly (lld-link.exe)
- Use LLVM tools objdump.exe and lib.exe to create import library of the Windows UCRT DLL, which is packed with the Engine
- Use the UCRT import library for linking to the C Runtime
- Use the Clang Compiler runtime static library to resolve target-specific symbols
- Use manually created libfltused.lib to provide Windows/MSVC specific symbol _fltused

Updated the IREE build scripts to provide the additionally required libraries and tools. Also updated the IREE compiler configs for Windows.

#jira UE-307870
#rb max.striebel, nico.ranieri

#tests Win64, Editor, NNEAutomationTests all green

#rnx

#Synced-CL 49800879

[CL 49801778 by christian regg in ue5-main branch]

81a45e1 NNERuntimeIREE
[NNE] NNERuntimeIREE improved error handling

#jira UE-358711
#rb nico.ranieri
#rnx
#tests NNEModelTest

Checks for FArchive::IsError() after serialization and checks for file operation success.

#Synced-CL 49762123

[CL 49800661 by max striebel in ue5-main branch]

713fa27 NNERuntimeIREE
[NNE] NNERuntimeIREE change FNNERuntimeIREEModelDataHeaderRDG to manual serialization

#jira UE-360565
#rb christian.regg
#rnx
#tests NNEModelTest, manual verification that GUID and Version are Serialized the same

In a Future CL we want to add a none USTRUCT field to FNNERuntimeIREEModelDataHeaderRDG. In order to support this FNNERuntimeIREEModelDataHeaderRDG is changed to a none USTRUCT struct and uses manual serialization.


#Synced-CL 49801766

[CL 49804118 by max striebel in ue5-main branch]

c4d0ba2 DataflowVolumeCore
Dataflow:
- Added FVolumeToSpheresWithRelaxationDataflowNode node

#rb cedric.caillaud
[FYI] Jack.Oakman


#Synced-CL 49790744

[CL 49795183 by gustav melich in ue5-main branch]

4b3fba0 AudioProperties
Walk UClass inheritance when overriding property details from a property sheet to avoid visualization errors
#rb ethan.fenn, panda.parkes

#Synced-CL 49735510

[CL 49811470 by igor dallavanzi in ue5-main branch]

8b77649 PythonScriptPlugin
Added Optional property support to Python

Python can now read and write Optional properties from UObjects and UStructs, where None is treated as unset.
Note: This does mean that you can't distinguish between an unset Optional and an Optional set to a null UObject, but the latter is an unusual use of Optional.

Python generated types can create Optional properties via a tuple of two values, where one is None and the other is the value type of the Optional (in either order), eg)
```
[at]unreal.uclass()
class TestOptional(unreal.Object):
prop = unreal.uproperty((str, None))

[at]unreal.ufunction(params=[(None, int)])
def func(self, opt):
pass
```

#rb albert.lee, dan.oconnor
#Synced-CL 49717872

[CL 49810627 by jamie dale in ue5-main branch]

6904f27 TargetingSystem
Expose some targeting system enum, functions and type

[REVIEW] [at]jeff.rubin, [at]Bill.Colby, [at]Todd.Eckert
#rb jeff.rubin
#lockdown bill.colby
#rnx
#Synced-CL 49811063

[CL 49823255 by guillaume patry in ue5-main branch]

09b9d17 DefaultInstallBundleManager
Clean-up of on-demand mount arguments.
Since most of the on-demand container settings are data driven from the TOC header, this change
removes most of the additional mount argument except the file path to the TOC.

- removed host group argument since the host group name is serialized in the TOC header
- removed the use of ForceNonSecureHTTP since we now use HTTP2 and TLS is mandatory
- removed setting relative TOC path except for UFEN since the path is serialized in the TOC header
- removed specifying InstallOnDemand since the flags are serialized in the TOC header
- removed GetOnDemandHostGroup and GetOnDemandTocRelativeURL from FInstallBundleSourceBulk since these the methods are no longer used

#rb Justin.Marcus
#rnx
[REVIEW] [at]Justin.Marcus

#Synced-CL 49721519

[CL 49804772 by per larsson in ue5-main branch]

(+156 more)


Experimental lists all experimental plugins touched today.

Modules shows the top engine modules ranked by impact score.

Plugins shows the top plugins ranked by impact score.

Commits highlights the most significant changes ranked by impact score.

Main Radar is experimental and generated automatically from Unreal Engine's
ue5-main branch. It may make mistakes, and I'm improving it day by day. If something looks off, please let me know — feedback helps make it better.

This project is part of my broader work at
Mundus Creatus.