From 8c1c282df5b6ec80e3087be959405f15797e8349 Mon Sep 17 00:00:00 2001 From: Mamadou Babaei Date: Fri, 28 Jun 2024 16:22:56 +0200 Subject: [PATCH] fix a critical Android crash that happens where the default development hand meshes could not be found --- .../SenseGlove/Components/SGVirtualHandComponent.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/Source/SenseGlove/Private/SenseGlove/Components/SGVirtualHandComponent.cpp b/Source/SenseGlove/Private/SenseGlove/Components/SGVirtualHandComponent.cpp index 037a0d11..03462ce9 100644 --- a/Source/SenseGlove/Private/SenseGlove/Components/SGVirtualHandComponent.cpp +++ b/Source/SenseGlove/Private/SenseGlove/Components/SGVirtualHandComponent.cpp @@ -577,7 +577,15 @@ USkeletalMesh* USGVirtualHandComponent::FImpl::LoadDefaultMesh() const void USGVirtualHandComponent::FImpl::SetDefaultMesh() const { - Owner->SetSkeletalMesh(LoadDefaultMesh(), true); + // FIXME + // Since we don't ship a default virtual hand mesh at the moment, calling SetDefaultMesh causes the following + // failed assertion due the fact that the engine won't be able to find the asset at the default location: + // Assertion failed: IsInGameThread() + // Unable to load /SenseGlove/Meshes/SK_SenseGlove_VirtualHand_*. Objects and Packages can only be loaded from the + // game thread with the currently active loader '%s'. + // One workaround would be disabling the async loading or as an alternative simply disabling this portion of the + // code should be a good-enough fix until we address this issue in its own time. + //Owner->SetSkeletalMesh(LoadDefaultMesh(), true); } USkeletalMesh* USGVirtualHandComponent::FImpl::GetMesh() const