Add a new factory step call ImportAssetObjectFinalize_GameThread so we can call some UI on the game thread when importing an asset.
#jira UE-174377
#rb jeanluc.corenthin
#rnx
#preflight 64235271a86ae7cbcccfa4af
[CL 24835626 by Alexis Matte 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]
The main change is that FSoftSkinVertex, used by FSkeletalMeshLODModel, in now stores weights as 16-bit after conversion from the import data. This increases the size of each FSoftSkinVertex from 144 bytes to 160 bytes (about 10% increase). By default render meshes still use 8-bit skin weights, with weights downshifted from the 16-bit modeling data, so no change in GPU memory consumption there. However, the vertex buffer will automatically return a 16-bit skin weights when requested from the GPU side (e.g. for CPU skinning and viewing tangents).
This change in the model data and vertex buffer CPU-side query, resulted in many changes throughout the codebase and will have an effect on licensees who are actively reading from and writing to these two storage locations.
The GPU skin cache shader has had one more permutation added when not using unlimited skin weights. The vertex factory is not affected.
#jira UE-164386
#rb alexis.matte, josie.yang
#preflight 632c0c5ab4515b7e22b4804d
[CL 22215219 by halfdan ingvarsson in ue5-main branch]
- Added checks to narrow down on a crash.
- Keep the async flag until we're done with the morph targets so that they don't get garbage collected.
#jira UE-163931
#rb alexis.matte
#preflight 632893203752284a313a0843
[CL 22087023 by jeanmichel dignard in ue5-main branch]
#jira UE-162455
#misc also applied fix to LODUtilities implementation
#rb Alexis.Matte
#preflight 6315ce7ea20b67673be69059
[CL 21790664 by SungJJinKang in ue5-main branch]
* Removed deprecated or dead code paths
* Simplified build system setup for physics support
* Deprecated build system flags and unsupported macros
#jira none
#rb Chris.Caulfield, Kriss.Gossart
#preflight 62963ec0fe779f23c8ea0c5e
[CL 20450744 by Benn Gallagher in ue5-main branch]
- Custom LOD import now use interchange (if interchange is enabled)
- Add an InterchangeManager API function to retrieve per asset type extensions format
- Add an interchange mesh utilities to create a common place to add mesh import code.
- Add an interchange file picker interface which can be implemented by plugin
- Add an editor plugin that implement the file picker, The file picker can be customize to import specific asset type.
#jira UETOOL-5050
#jira UETOOL-5049
#rb jeanmichel.dignard
#preflight 626819fa430b9997ebe3bece
#rnx
[CL 19923170 by Alexis Matte in ue5-main branch]
Deprecation of FPlatformMath::IsNegative*() functions.
New FPlatformMath::IsNegativeOrNegativeZero().
Fix up of existing usage to either use < 0 or IsNegativeOrNegativeZero where appropriate.
Fixes for aliasing problems in various FMath functions, including IsNegative*().
Resubmission of CL# 19833778 with fixes for problematic Mac and Android toolchains, causing spurious errors while building PCHs.
#rb devin.doucette, charles.bloom, will.damon, chris.babcock
#jira UE-148435
#preflight 6260764d91376845adf9893f
[CL 19840896 by Steve Robb in ue5-main branch]