UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
InterchangeMeshUtilities.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "Async/Future.h"
7#include "UObject/Object.h"
9
10#include "InterchangeMeshUtilities.generated.h"
11
12#define UE_API INTERCHANGEENGINE_API
13
15class USkeletalMesh;
16
18{
19public:
21
23
24 UE_API virtual void Execute() override;
25
26 // This delegate should execute the following editor function (since we are a runtime module we need this delegate to call the editor function)
27 // FSkinWeightsUtilities::ReimportAlternateSkinWeight(SkeletalMesh, LodIndex);
30
32
33private:
34 TObjectPtr<USkeletalMesh> SkeletalMesh;
35
36 //Alternate skin weights reimport
37 TArray<int32> ReImportAlternateSkinWeightsLods;
38};
39
40UCLASS(BlueprintType, MinimalAPI)
42{
44public:
45
54 static INTERCHANGEENGINE_API bool ShowMeshFilePicker(FString& OutFilename, const FText& Title);
55
66 static INTERCHANGEENGINE_API TFuture<bool> ImportCustomLod(UObject* MeshObject, const int32 LodIndex, const UInterchangeSourceData* SourceData, bool bAsync);
67
79 static INTERCHANGEENGINE_API TFuture<bool> ImportMorphTarget(USkeletalMesh* SkeletalMesh, const int32 LodIndex, const UInterchangeSourceData* SourceData, bool bAsync, const FString& MorphTargetName);
80
91 UFUNCTION(BlueprintCallable, Category = "SkeletalMesh | MorphTarget")
92 bool ScriptedImportMorphTarget(USkeletalMesh* SkeletalMesh, const int32 LodIndex, const UInterchangeSourceData* SourceData, const FString& MorphTargetName) const
93 {
94 constexpr bool bAsyncFalse = false;
95 return ImportMorphTarget(SkeletalMesh, LodIndex, SourceData, bAsyncFalse, MorphTargetName).Get();
96 }
97
98
99private:
100
101 static TFuture<bool> InternalImportCustomLod(TSharedPtr<TPromise<bool>> Promise, UObject* MeshObject, const int32 LodIndex, const UInterchangeSourceData* SourceData, bool bAsync);
102};
103
104
105#undef UE_API
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define UE_API
Definition InterchangeMeshUtilities.h:12
const bool
Definition NetworkReplayStreaming.h:178
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define UFUNCTION(...)
Definition ObjectMacros.h:745
#define UCLASS(...)
Definition ObjectMacros.h:776
Definition InterchangeFactoryBase.h:41
Definition InterchangeMeshUtilities.h:18
virtual UE_API void Execute() override
Definition InterchangeMeshUtilities.cpp:70
FInterchangeReimportAlternateSkinWeight ReimportAlternateSkinWeightDelegate
Definition InterchangeMeshUtilities.h:29
DECLARE_DELEGATE_RetVal_TwoParams(bool, FInterchangeReimportAlternateSkinWeight, USkeletalMesh *, int32 LodIndex)
virtual ~FInterchangeSkeletalMeshAlternateSkinWeightPostImportTask()
Definition InterchangeMeshUtilities.h:22
UE_API bool AddLodToReimportAlternate(int32 LodToAdd)
Definition InterchangeMeshUtilities.cpp:126
Definition Text.h:385
Definition Array.h:670
Definition Future.h:393
Definition Future.h:541
Definition SharedPointer.h:692
Definition InterchangeMeshUtilities.h:42
Definition InterchangeSourceData.h:23
Definition Object.h:95
Definition SkeletalMesh.h:440
Definition ObjectPtr.h:488