Converted SIMD calculations from double back to float
#rb brian.karis
#preflight 625f5478dd47b4ad214ff78b
[CL 19824539 by Rune Stubbe in ue5-main branch]
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]
These both trim detail from the Nanite data that is stored to disk and can be used to optimize disk size after import. Should be a super useful tool late in production.
#rb rune.stubbe
#lockdown michal.valient
#preflight 61fb25e6033a864b77e11ed6
#ROBOMERGE-AUTHOR: brian.karis
#ROBOMERGE-SOURCE: CL 18838594 in //UE5/Release-5.0/... via CL 18838602 via CL 18838937
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)
[CL 18838962 by brian karis in ue5-main branch]
Added UI for changing minimum residency
Decoupled imposter data allocation from root page allocation
Removed convoluted logic around a page's dependencies including itself for legacy reasons
Made streaming of imposter data optional (r.Nanite.Streaming.Imposters)
#rb andrew.lauritzen, ola.olsson
#preflight 6163f8f8eaa06c0001e409ee
#lockdown michal.valient
#ROBOMERGE-OWNER: jon.nabozny
#ROBOMERGE-AUTHOR: rune.stubbe
#ROBOMERGE-SOURCE: CL 17770690 via CL 17986013 via CL 18368123 via CL 18368152
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)
[CL 18368223 by jon nabozny in ue5-release-engine-test branch]
Reduced root page size from 128kb to 32kb
Page allocation size is no longer rounded up when using fixed sized allocation (r.Nanite.Streaming.DynamicRootPages=0)
Removed the ClusterPageHeaders resource and embedded its data directly into pages
Renamed SOAStrides to PageConstants
#preflight 61041cd35b2fb800011aa2c2
#ROBOMERGE-SOURCE: CL 17007430 via CL 17007443
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v838-16927207)
[CL 17007446 by rune stubbe in ue5-release-engine-test branch]
Nanite DDC key not bumped as successfully built meshes are still valid.
#rb none
[FYI] graham.wihlidal, brian.karis
#ROBOMERGE-SOURCE: CL 16652302 via CL 16659235
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v834-16658389)
[CL 16659407 by rune stubbe in ue5-release-engine-test branch]
Pages can now refererence data from the parent page.
Page transcoding is now batched based on page dependencies.
Removed Nanite's LZ container for platforms that don't have hardware LZ. Rely on iostore compression instead. ~4% disk saving. 32mb system memory saving from temp buffer.
Better integer-based UV quantization code similar to new position quantization.
Got rid of remaining old position quantization code.
Reduced float4s per cluster from 8 to 6. ~2% memory density.
Added BitStreamReader support for reading from UAV. Needed to reference parent data.
#rb graham.wihlidal
[FYI] brian.karis
#ROBOMERGE-SOURCE: CL 16621364 via CL 16621388
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v830-16605563)
[CL 16621402 by rune stubbe in ue5-release-engine-test branch]
#[robomerge] ignore
#lockdown graham.wihlidal
#[fyi] nick.whiting
#ushell-cherrypick of 16120952 by Rune.Stubbe
[CL 16155632 by Rune Stubbe in ue5-main branch]