* Moved dllexport from type to methods/staticvar in all Engine runtime code. This improves compile times, memory and performance in dll builds
[CL 26082269 by henrik karlsson in ue5-main branch]
- Move audio bus functionality from Mixer Device to new Audio Bus Subsystem
- Add new audio bus key struct so that FMixerAudioBuses do not have to be created with UObject ids
#jira UE-169610
#rb phil.popp, ryan.mangin, rob.gay
#preflight 63906195255f07df8e452b8c
[CL 23429172 by helen yang in ue5-main branch]
This fixes a bug where audio bus reader nodes might never start popping audio because AudioCallbackBufferFrameSize is set to a value other than the default 1024, such as 256.
Replace AddPatchForAudioBus with AddPatchOutputForAudioBus, which is parameterized by the desired number of frames and channels in the patch output.
Update AddPatchInputForAudioBus to match.
Both functions use a new MakePatch function to create a patch based on the parameters and scaled to fit the number of blocks specified by the new "au.PatchBufferBlocks" cvar.
Add support for quad, 5.1, and 7.1 bus reader and writer nodes.
[REVIEW] [at]phil.popp
#preflight 6386191a4004f73f62c48875
[CL 23312512 by nicholas howe in ue5-main branch]
Before:
3648 unity files
Total CPU Time: 47886.140625 s
Total time in Parallel executor: 498.81 seconds
After:
3548 unity files
Total CPU Time: 46643.828125 s
Total time in Parallel executor: 486.06 seconds
#jira
#preflight
[CL 22173263 by marc audy in ue5-main branch]
* AudioAnalysis --> Audio_Analysis
* MetaSound --> Audio_MetaSound
* AudioSpatializationPlugins --> Audio_SpatializationPlugins
The LLM_DEFINE_TAG macro needs to use the "underscore convention" to name a child tag prefixed with the name of the parent tag.
#rb Ryan.Mangin
#jira UE-164427
#preflight 632c5057c7791417aa7c7ea8
[CL 22145926 by ionut matasaru in ue5-main branch]
Headers are updated to contain any missing #includes needed to compile and #includes are sorted. Nothing is removed.
#ushell-cherrypick of 21065896 by bryan.sefcik
#preflight 62d4b1a5a6141b6adfb0c892
#jira
#ROBOMERGE-OWNER: Bryan.sefcik
#ROBOMERGE-AUTHOR: bryan.sefcik
#ROBOMERGE-SOURCE: CL 21150156 via CL 21151754 via CL 21154719
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)
#ROBOMERGE-CONFLICT from-shelf
[CL 21181076 by Bryan sefcik in ue5-main branch]
- Add nullptr check when setting bus sends
- Initialize audio analyzer number of frames
- Remove analyzers when tearing down MetaSound audio meter
#jira UE-140872
#rb rob.gay
#preflight 620a9d8f4a08181f72a47f28
#ROBOMERGE-AUTHOR: helen.yang
#ROBOMERGE-SOURCE: CL 18986455 in //UE5/Release-5.0/... via CL 18986877 via CL 18987819
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v917-18934589)
[CL 18988135 by helen yang in ue5-main branch]
#ROBOMERGE-SOURCE: CL 16121084 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v789-15992632)
[CL 16121094 by rob gay in ue5-main branch]
ESPMode::Fast is deprecated.
UNIQUENETID_ESPMODE and UNIQUENETID_CONSTRUCTORVIS removed.
Delegate creation functions (DelegateType::CreateSP, DelegateType::BindSP and DelegateType::AddSP) now work in all modes, making the DelegateType::*ThreadSafeSP functions redundant (retained for backwards compatibliity).
#rb andriy.tylychko
#jira UE-102565
#fyi chris.varnsverry, ben.zeigler
[CL 16113360 by Steve Robb in ue5-main branch]
-- moved the audio analyzer subsystem to be an engine subsystem vs a world subsystem
#rb Jimmy.Smith
#jira UE-110047
#ROBOMERGE-OWNER: aaron.mcleran
#ROBOMERGE-AUTHOR: aaron.mcleran
#ROBOMERGE-SOURCE: CL 15632634 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v777-15581079)
#ROBOMERGE-CONFLICT from-shelf
[CL 15632681 by aaron mcleran in ue5-main branch]
By default:
* It implements FTickableGameObject::GetTickableGameObjectWorld to return the subsystem's world
* It prevents the subsystem from ticking as soon as the subsystem is deinitialized (has required custom solutions in the past to avoid crashes when UWaterSubsystem and UAutoDestroySubsystem get ticked after their world is pending destroy)
* It prevents the subsystem's CDO from ever ticking
#rb jean-francois.dube, chris.gagnon, ben.zeigler
#jira none
[CL 15512967 by jonathan bard in ue5-main branch]
Allowing creating analyzer without a world context object (and a world instead)
#rb Rob.Gay
#jira none
[CL 15212742 by Aaron McLeran in ue5-main branch]