Hello
Like some of my previous questions, we use mutable to create our characters and adapt the equipment on different bodytype.
We have a graphical glitch when a character load. All the vertices of the mesh shakes violently in a large radius around the character for 0.1s-0.5s. When the player come near to this npc, a 2nd glitch happen (it look like a new LOD is loaded/applyed), after that, the character works fine.
It happen on every characters. They all share the same customizable object, but with a different customizable object instance.
With the debug command “Show LOD” the problem disappear. In addition to this behavior, I don’t know what this command does.
This problem only happen in a cooked version, we don’t have this problem in the editor nor in play in editor.
----
On the editor side, we have an other problem that may be linked to this one.
When the first character load we trigger an ensure with this callstack (but i think it happen everytimes, ensure are triggered only one time).
USkeletalMergingLibrary::AddBlendProfiles(USkeleton *, const TMap<…> &) SkeletalMergingLibrary.cpp:364
USkeletalMergingLibrary::MergeSkeletons(const FSkeletonMergeParams &) SkeletalMergingLibrary.cpp:288
MergeSkeletons(UCustomizableObject &, FCustomizableInstanceComponentData &, bool &) CustomizableObjectInstance.cpp:1283
BuildSkeletonData(const TSharedRef<…> &, USkeletalMesh &, FCustomizableObjectInstanceComponentIndex) CustomizableObjectInstance.cpp:3868
UCustomizableInstancePrivate::UpdateSkeletalMesh_PostBeginUpdate0(UCustomizableObjectInstance *, const TSharedRef<…> &) CustomizableObjectInstance.cpp:2393
impl::Task_Game_ConvertResources(const TSharedRef<…> &) CustomizableObjectSystem.cpp:3188
UE::Core::Private::Function::TFunctionRefCaller<`impl::Task_Game_LockCache'::`2'::<lambda_2>,void>::Call(void *) Function.h:292
UE::Core::Private::Function::TFunctionRefBase::operator()() Function.h:414
FMutableTaskGraph::TryLaunchGameThreadTask() FMutableTaskGraph.cpp:322
FMutableTaskGraph::Tick() FMutableTaskGraph.cpp:335
UCustomizableObjectSystem::TickInternal(bool) CustomizableObjectSystem.cpp:4128
UCustomizableObjectSystemPrivate::UpdateResourceStreaming(float, bool) CustomizableObjectSystem.cpp:4633
FStreamingManagerCollection::UpdateResourceStreaming(float, bool) ContentStreaming.cpp:869
IStreamingManager::Tick(float, bool) ContentStreaming.cpp:696
FStreamingManagerCollection::Tick(float, bool) ContentStreaming.cpp:838
UEditorEngine::Tick(float, bool) EditorEngine.cpp:2446
UUnrealEdEngine::Tick(float, bool) UnrealEdEngine.cpp:534
FEngineLoop::Tick() LaunchEngineLoop.cpp:5828
EngineTick() Launch.cpp:60
GuardedMain(const wchar_t *) Launch.cpp:192
LaunchWindowsStartup(HINSTANCE__ *, HINSTANCE__ *, char *, int, const wchar_t *) LaunchWindows.cpp:266
WinMain(HINSTANCE__ *, HINSTANCE__ *, char *, int) LaunchWindows.cpp:334
Here the 4 meshs of the character are combined (the body skin, the armors, the gloves and boots), they all have their skeleton with the sames bones.
When the 2nd profile (skeleton) is added, the ensure is triggered.
All elements have the same skeleton base, and i think mutable must merge them (it look like to be the objective of this fonction).
Why this happen ? and is it linked to the main problem of this topic ?
Thank you for your answer.
Nicolas
[Attachment Removed]