Something that is scoped by nature only pertains to the current thread and thus is implicitly synchronised. Furthermore, in memory-scope's case the alloc-free events are synchronised anyway which makes it redundant for the scoped events.
#rb im
#rnx
#jira none
#preflight 6332b8307b582f58abad24db
[CL 22203260 by martin ridgers in ue5-main branch]
-Nanite-specific settings for tangent and degenerates are no longer also applied to the non-nanite mesh LODs on the same mesh.
-100% fallback meshes now have identical tangents to input mesh. Don't skip the tangent generation in StaticMeshBuilder for these meshes and don't recalculate tangents in Nanite builder.
#preflight 632b04c0b40000c8f0c29adb
#rb brian.karis
[FYI] jamie.hayes, graham.wihlidal
#lockdown marc.audy
[CL 22201439 by rune stubbe in ue5-main branch]
-only particle systems will have their attributes compressed
-Previous versions of our deny list will also be denied compression (we don't want to be comparing half Particles.Prevoius.Position with float Particles.Position)
-fixed stride being supplied to VF shaders
#jira UE-159142
#preflight 6331d96ba907d7192fe87e2d
#rb stu.mckenna
[CL 22193521 by rob krajcarski in ue5-main branch]
if (Condition)
{
Foo = Bar; // this would have been replaced with: branch_flattened_temp0 = Bar;
Foo2 = Foo; // this would have been replaced with: branch_flattened_temp1 = Foo; this should have been replaced by:
branch_flattened_temp1 = branch_flattened_temp0;
}
#jira UE-164327
#rb simon.tovey
#preflight 632ddb75e23e50651b95cca4
[CL 22164425 by rob krajcarski in ue5-main branch]
A = GetFirstValue();
B = A;
A = GetSecondValue();
C = A; // <-- this would get GetSecondValue() assigned to C instead of GetFirstValue()
Adds an SSA pass to help reduce overwriting registers, adds logic to remove self assignments, and adds logic to stop propagating when values are dirtied
From a sampling of scripts, about 2% are changed (where 1-3 unnecessary ops have been deleted).
#rb simon.tovey
#preflight 62b0d63c8e03312ad83a0c51
#jira UE-148892
#ushell-cherrypick of 21320942 by rob.krajcarski
[CL 22164310 by rob krajcarski in ue5-main branch]
This is a part of a larger change, 21332740, which fixes TSparseArray::EmplaceAt, which is needed for physics user data.
Slack discussion here: https://epic.slack.com/archives/C024GKBSL/p1663795752638719
[FYI] ian.fox
[CL 22151140 by steven barnett in ue5-main branch]
Add unit test for that function
#rb Matt.Peters, Rex.Hill
#jira none
#preflight 632a4171f45b523a632a2921
[CL 22141845 by Francis Hurteau in ue5-main branch]
- GetFriendlyShaderPlatformName removed
- RHIShaderPlatformDefinitions.inl deleted
- Added FriendlyNames to all ShaderPlatforms in DDSPI
- MenuText now comes from FriendlyNames in DDSPI
#rb Jack.Porter
#jira none
#preflight 632b1f8c826e0c2fe9a9d5d2
[CL 22118730 by florin pascu in ue5-main branch]
These now serialize a NetGUID tracked by the PackageMap, as other replicated references to objects do. Effectively acts as a weak pointer in the replication case now as well. Soft pointers to stably-named objects continue to replicate their string path.
Added EngineTest cases for replicated soft pointers.
#jira UE-144886
#rb brian.bekich
#preflight 632a22f6b40000c8f08c6e4d
[CL 22105246 by ryan gerleve in ue5-main branch]