Switched FDynamicBVH to use greedy insertion because branch and bound perf significantly degrades with heavily overlapped leaves.
Added closest point queries using branch and bound.
FBounds is now templated as TBounds.
#rb graham.wihlidal
#robomerge FNNC
#preflight 6216dbf9104496cff8abfc36
[CL 19107993 by Brian Karis in ue5-main branch]
Changed fallback settings to be largely error based with new property FallbackRelativeError.
Nanite builder will now provide the LOD fallbacks for all autogenerated LOD levels which is far faster than generating them from scratch.
#rb graham.wihlidal
#preflight 61f9e1fe9e4d23cd93b8d556
#ROBOMERGE-AUTHOR: brian.karis
#ROBOMERGE-SOURCE: CL 18820056 in //UE5/Release-5.0/... via CL 18820070 via CL 18822916
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)
[CL 18825066 by brian karis in ue5-main branch]
#jira UE-122078
#rb Andrew.Davidson, Colin.McGinley
#preflight standard build
#ROBOMERGE-AUTHOR: fred.kimberley
#ROBOMERGE-SOURCE: CL 18817999 in //UE5/Release-5.0/... via CL 18818012 via CL 18822871
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)
[CL 18824721 by fred kimberley in ue5-main branch]
FLinearColor has also been modified to make any double->float conversions explicit. Previously all 3D TVector versions were allowed to be implicit and thus could convert TVector<double> => FLinearColor => TVector4<float>.
Fixed up all engine and game casts. Added "//LWC_TODO: precision loss" around any explicit casts that previously were silently explicit and we may need to revisit for precision loss analysis.
#jira UE-122085
#rb Ben.Ingram, Andrew.Davidson
#preflight 61f24af473238441cb7bb0f1
#ROBOMERGE-AUTHOR: zak.middleton
#ROBOMERGE-SOURCE: CL 18751249 in //UE5/Release-5.0/... via CL 18751253 via CL 18751319
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)
[CL 18751326 by zak middleton in ue5-main branch]
This represents UE4/Main @17911760, Release-5.0 @17915875 and Dev-PerfTest @17914035
[CL 17918595 by aurel cordonnier in ue5-release-engine-test branch]
This represents UE4/Main @17774255, Release-5.0 @17791557 and Dev-PerfTest @17789485
[CL 17794212 by aurel cordonnier in ue5-release-engine-test branch]
- Cook side extra low lod coarse mesh will be created at 1/8th of the original coarse mesh if mesh streaming or editor data is available for the platform
- Nanite static meshes with streamable LODs are registered to a Nanite::CoarseMeshStreamingManager which will handle the stream in/out requests for these assets in fixed memory budget (memory budget is part of the total mesh streaming budget)
- Nanite proxy needs to handle different raytracing proxy LOD indices now for dynamic and cached indices
- What to stream is driven by what's used in the TLAS build - each deferred render pass all used streamable meshes are collected and forwarded to the CoarseMeshStreamingManager
- CoarseMeshStreamingManager is updated after all views are rendered and will make stream in/out requests depending on the TLAS usage
- When LODs of UStaticMeshes renderdata is loaded or unloaded then a rebuild of the cached render data is requested to make sure the correct LOD & RT BLAS is used (to do this the UStaticMeshComponent are registered to the UStaticMesh so a request for rebuild can be made for all the proxies on the scene)
#preflight 612659e872e9eb00010a27d9
#ROBOMERGE-SOURCE: CL 17314263 via CL 17315687
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v861-17282326)
[CL 17315942 by kenzo terelst in ue5-release-engine-test branch]
This involves a change to the DDC key format for static meshes with multiple sections in LOD0.
#jira UE-112945
#rb Graham.Wihlidal, Alexis.Matte
[CL 16127723 by Richard TalbotWatkin in ue5-main branch]