[REVIEW] [at]Rob.Cannaday [at]Sam.Zamani
#ROBOMERGE-AUTHOR: chris.varnsverry
#ROBOMERGE-SOURCE: CL 19172414 via CL 19172416 via CL 19172423 via CL 19172425 via CL 19172627
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)
[CL 19172786 by chris varnsverry in ue5-main branch]
SceneOutliner - Unloaded LandscapeProxy actors are now placed under their associated Landscape
* FWorldPartitionActorDesc now has a GetSceneOutlinerParent() virtual which is used to build the actor hierarchy of the SceneOutliner
* FLandscapeActorDesc overrides GetSceneOutlinerParent() to return the Landscape guid as it's parent
Resaved all LandscapeProxies in the OpenWorld template map
#rb patrick.enfedaque, jeanfrancois.dube
#preflight 62191950f014007cf8b82a5e
#ROBOMERGE-OWNER: marc.audy
#ROBOMERGE-AUTHOR: sebastien.lussier
#ROBOMERGE-SOURCE: CL 19152459 in //UE5/Release-5.0/... via CL 19157182
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)
[CL 19161144 by marc audy in ue5-main branch]
#rb trivial
#ROBOMERGE-AUTHOR: steve.robb
#ROBOMERGE-SOURCE: CL 19123602 via CL 19123625 via CL 19123649 via CL 19125747
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)
[CL 19154475 by steve robb in ue5-main branch]
#rb trivial
#ROBOMERGE-AUTHOR: steve.robb
#ROBOMERGE-SOURCE: CL 19123060 via CL 19123157 via CL 19123189 via CL 19125733
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)
[CL 19154466 by steve robb in ue5-main branch]
Previously, vector types were using the single precision variants for their make&break functions. As a result, the split vectors would be floats, which led to precision loss. Going forward, we want to ensure that we use double precision variants of these functions. The single precision functions no longer serve any use, and will be deprecated.
Additionally, FVector_NetQuantize and friends can go back to using the default FVector make&break functions. We don't need to deprecate these functions since they only existed in 5.0. However, some content has already been saved with these functions, so we need to still setup redirects in BaseEngine.ini.
Finally, AssertMacros.h was missing several variants of GET_FUNCTION_NAME_CHECKED_NParams. Without these, GET_FUNCTION_NAME_CHECKED would fail to compile since KismetMathLibrary would have overloads of MakeVector and BreakVector.
#jira UE-141652
#preflight 6216b51e647bb7debf6dbf76
#rb phillip.kavan
#lockdown julien.marchand
#ROBOMERGE-AUTHOR: dave.jones2
#ROBOMERGE-SOURCE: CL 19122243 in //UE5/Release-5.0/... via CL 19123441
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)
[CL 19154373 by dave jones2 in ue5-main branch]
Can be disabled with cvar VeryLargePageAllocator.UseFallback
#[review] [at]rob.millar, [at]ben.woodhouse
#rnx
#[robomerge] deadend
#ushell-cherrypick of 19059208 by Mickael.Gilabert
#ROBOMERGE-AUTHOR: mickael.gilabert
#ROBOMERGE-SOURCE: CL 19101994 via CL 19103367 via CL 19106280 via CL 19106374 via CL 19110143
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)
[CL 19148492 by mickael gilabert in ue5-main branch]
Additionally add lots of compile time verification that the ispc structs and enums match the c structs and enums for collision objects. This required adding a new accessor (which I called ISPCDataVerifier) to many of the implicit objects which can report the offset and size of its members.
Highlighted code changes:
TaperedCylinder.h
Switched this to hold FPlaneConcrete instead of FPlane. The difference is that FPlane is an FImplicitObject and otherwise has a bunch of passthroughs to FPlaneConcrete. We never use the fact that these are FImplicitObjects, so we don't need this additional 32 bytes per plane.
PerParticlePBDCollisionConstraint.ispc
On top of updating the convex code to be the correct float types, I also added th e FTaperedCapsule and FTaperedCylinder ispc structs. This makes it easier to verify this data.
ImplicitObject.h, ChaosClothingSimulationCollider.cpp
Technically all TSpheres think they have ImplicitObjectType::Sphere, but all of our code assumes that ImplicitObjectType::Sphere corresponds with TSphere<FReal,3> when casting to the derived type. I added a new typedef for FSphere which is this one type.
#rb michael.lentine
#preflight 620e9200e55d9645848ecf90
#jira UE-143152
#lockdown michael.lentine
#ROBOMERGE-AUTHOR: alex.mcadams
#ROBOMERGE-SOURCE: CL 19098395 via CL 19099712 via CL 19100195 via CL 19100716 via CL 19109898
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)
[CL 19147223 by alex mcadams in ue5-main branch]