Only leaving CL 26157603 reverted since accessing GenerateSource in FDistanceFieldVolumeData::CacheDerivedData is not safe due to async mesh compilation.
#prelight 64948190a26e02126bc0a64f
#rb Krzysztof.Narkowicz
[CL 26206875 by tiago costa in ue5-main branch]
[FYI] tiago.costa
Original CL Desc
-----------------------------------------------------------------
Use FSignedDistanceFieldBuildSectionData when generating distance fields for Nanite meshes.
Context:
- Nanite meshes distance fields are generated using the original mesh data instead of the coarse representation generated by Nanite, however that code path was not checking section data such as blend mode, two sided, etc.
Fix:
- Modified FStaticMeshBuilder::BuildMeshVertexPositions(...) to also output a FStaticMeshSectionArray.
- Updated MeshRepresentation::SetupEmbreeScene(...) to check section flags when using SourceMeshData.IsValid() code path.
#prelight
#rb Krzysztof.Narkowicz
[CL 26174853 by bob tellez in ue5-main branch]
Context:
- Nanite meshes distance fields are generated using the original mesh data instead of the coarse representation generated by Nanite, however that code path was not checking section data such as blend mode, two sided, etc.
Fix:
- Modified FStaticMeshBuilder::BuildMeshVertexPositions(...) to also output a FStaticMeshSectionArray.
- Updated MeshRepresentation::SetupEmbreeScene(...) to check section flags when using SourceMeshData.IsValid() code path.
#prelight
#rb Krzysztof.Narkowicz
[CL 26160411 by tiago costa in ue5-main branch]
- Different mesh sections can point to the same material slot which was a problem since bAffectDistanceFieldLighting flag can be set per section but we were using an array with an entry per material slot instead of per section.
- To address this now we build array of FSignedDistanceFieldBuildSectionData (one entry per section) so section don't override each other.
#prelight 64921d9ab76bf403cda2f33f
#rb daniel.wright
[CL 26137888 by tiago costa in ue5-main branch]
- Workaround issue with compiler optimization by using copy constructor.
#rb none
#preflight none
#fyi krzysztof.narkowicz
[CL 23313007 by tiago costa in ue5-main branch]
BoneInfluencesLimit can be set on each LOD of an asset. DefaultBoneInfluencesLimit is a per-platform global default that can be set from the project settings.
This allows you to, for example, enable Unlimited Bone Influences on a project while ensuring that meshes don't use more than 8 influences by default, even if they've been imported with more.
#rb alexis.matte,josie.yang
#preflight 6380959cf514e1ded907774d
[CL 23265588 by henry falconer in ue5-main branch]