UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
InterchangeProjectSettings.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
11
12#include "InterchangeProjectSettings.generated.h"
13
14#define UE_API INTERCHANGEENGINE_API
15
17
18USTRUCT(BlueprintType)
20{
22
23 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "TranslatorPipelines", meta = (AllowedClasses = "/Script/InterchangeCore.InterchangeTranslatorBase"))
25
28};
29
30USTRUCT(BlueprintType)
32{
34
35
36 UPROPERTY(EditAnywhere, Category = "Pipelines", meta = (AllowedClasses = "/Script/InterchangeCore.InterchangePipelineBase, /Script/InterchangeEngine.InterchangeBlueprintPipelineBase, /Script/InterchangeEngine.InterchangePythonPipelineAsset"))
38
40 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "TranslatorPipelines")
41 TArray<FInterchangeTranslatorPipelines> PerTranslatorPipelines;
42};
43
44USTRUCT(BlueprintType)
46{
48
49 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "DialogOverride", meta = (AllowedClasses = "/Script/InterchangeCore.InterchangeTranslatorBase"))
51
53 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "DialogOverride")
54 bool bShowImportDialog = true;
55
57 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "DialogOverride")
58 bool bShowReimportDialog = false;
59};
60
61USTRUCT(BlueprintType)
63{
65
66
67 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "DialogOverride")
68 bool bShowImportDialog = true;
69
71 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "DialogOverride")
72 bool bShowReimportDialog = false;
73
74 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "DialogOverride")
75 TArray<FInterchangePerTranslatorDialogOverride> PerTranslatorImportDialogOverride;
76};
77
78USTRUCT(BlueprintType)
80{
82
83
84 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Pipeline")
86
88 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Pipeline")
89 FName DefaultPipelineStack = NAME_None;
90
92 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Pipeline")
94
96 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "DialogOverride")
97 bool bShowImportDialog = true;
98
100 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "DialogOverride")
101 bool bShowReimportDialog = false;
102};
103
104USTRUCT(BlueprintType)
106{
108
109 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "DialogOverride", Meta=(DisplayAfter="bShowReimportDialog"))
111};
112
113USTRUCT(BlueprintType)
115{
117
118
119 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Pipeline", Meta=(DisplayAfter="DefaultPipelineStack"))
120 TMap<EInterchangeTranslatorAssetType, FName> DefaultPipelineStackOverride;
121
122 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "DialogOverride", Meta=(DisplayAfter="bShowReimportDialog"))
124};
125
126USTRUCT(BlueprintType)
128{
130
137
139 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "InterchangeGroup")
140 FName DisplayName;
141
143 UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "InterchangeGroup", meta = (IgnoreForMemberInitializationTest, EditCondition = "false", EditConditionHides))
144 FGuid UniqueID = FGuid::NewGuid();
145
147 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Pipeline")
148 FName DefaultPipelineStack = NAME_None;
149
151 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Pipeline", Meta = (DisplayAfter = "DefaultPipelineStack"))
152 TMap<EInterchangeTranslatorAssetType, FName> DefaultPipelineStackOverride;
153
155 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "DialogOverride")
156 bool bShowImportDialog = true;
157
159 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "DialogOverride")
160 bool bShowReimportDialog = false;
161
163 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "DialogOverride")
165};
166
167UCLASS(config=Engine, BlueprintType, meta=(DisplayName=Interchange), MinimalAPI)
169{
171
172public:
176 UPROPERTY(EditAnywhere, BlueprintReadWrite, config, Category = "ImportContent")
178
182 UPROPERTY(EditAnywhere, BlueprintReadWrite, config, Category = "ImportIntoLevel")
184
186 UPROPERTY(EditAnywhere, BlueprintReadWrite, config, Category = "EditorInterface")
188
193 UPROPERTY(EditAnywhere, BlueprintReadWrite, config, Category = "Generic|ImportSettings")
194 bool bStaticMeshUseSmoothEdgesIfSmoothingInformationIsMissing = true;
195
200 UPROPERTY(EditAnywhere, BlueprintReadWrite, config, Category = "Editor Generic Pipeline Class")
202
208 FSoftObjectPath ConverterDefaultPipeline;
209
213 UPROPERTY(EditAnywhere, BlueprintReadWrite, config, Category = "Groups", meta = (NoElementDuplicate))
214 TArray<FInterchangeGroup> InterchangeGroups;
215
216private:
217#if WITH_EDITOR
218 virtual void PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent) override;
219#endif
220};
221
239
240UCLASS(MinimalAPI)
242{
244public:
250 UFUNCTION(BlueprintCallable, Category = "Interchange Settings")
252
258 UFUNCTION(BlueprintCallable, Category = "Interchange Settings")
260
266 UFUNCTION(BlueprintCallable, Category = "Interchange Settings")
267 static UE_API TArray<UInterchangePipelineBase*> GetPipelineStackFromSourceData(const bool bIsSceneImport, const UInterchangeSourceData* SourceData);
268};
269
270UCLASS(config = EditorPerProjectUserSettings, BlueprintType, meta = (DisplayName = Interchange), MinimalAPI)
272{
274
275public:
276 UE_DEPRECATED(5.6, "Use the dialog overrides on the Interchange category of the Project Settings if you want to control when the Interchange reimport dialog is shown")
277 UPROPERTY(EditAnywhere, BlueprintReadWrite, config, Category = "Show Dialog", meta=(EditCondition = "false", ToolTip="Use the dialog overrides on the Interchange category of the Project Settings if you want to control when the Interchange reimport dialog is shown"))
278 bool bShowImportDialogAtReimport = false;
279
280 const FGuid& GetUsedGroupUID() const { return UsedGroupUID; }
281
282 UFUNCTION(BlueprintCallable, Category = "Interchange | Groups")
283 const FName& GetUsedGroupName() const { return UsedGroupName; }
284
285 UFUNCTION(BlueprintCallable, Category = "Interchange | Groups")
286 void SetUsedGroupName(const FName& InUsedGroupName);
287
288 void UpdateUsedGroupName();
289
290private:
291 UPROPERTY(EditAnywhere, Transient, Category = "Group Used", meta = (GetOptions = "GetSelectableItems", AllowPrivateAccess = "true"))
292 FName UsedGroupName;
293
294 UPROPERTY(EditAnywhere, Category = "Group Used", config, meta = (IgnoreForMemberInitializationTest, EditCondition = "false", EditConditionHides))
295 FGuid UsedGroupUID;
296
297 UFUNCTION()
298 TArray<FName> GetSelectableItems() const;
299
300 void UpdateUsedGroupUIDFromGroupName();
301
302#if WITH_EDITOR
303 virtual void PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent) override;
304 virtual void PostInitProperties() override;
305#endif
306};
307
308#undef UE_API
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
return true
Definition ExternalRpcRegistry.cpp:601
#define UE_API
Definition InterchangeProjectSettings.h:14
EInterchangeTranslatorAssetType
Definition InterchangeTranslatorBase.h:55
const bool
Definition NetworkReplayStreaming.h:178
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define UFUNCTION(...)
Definition ObjectMacros.h:745
#define UCLASS(...)
Definition ObjectMacros.h:776
#define USTRUCT(...)
Definition ObjectMacros.h:746
uint8_t uint8
Definition binka_ue_file_header.h:8
Definition Engine.Build.cs:7
Definition InterchangeProjectSettings.h:223
static INTERCHANGEENGINE_API FName GetDefaultPipelineStackName(const bool bIsSceneImport, const UInterchangeSourceData &SourceData)
Definition InterchangeProjectSettings.cpp:78
static INTERCHANGEENGINE_API FInterchangeImportSettings & GetMutableDefaultImportSettings(const bool bIsSceneImport)
Definition InterchangeProjectSettings.cpp:73
static INTERCHANGEENGINE_API FInterchangeImportSettings & GetMutableImportSettings(UInterchangeProjectSettings &InterchangeProjectSettings, const bool bIsSceneImport)
Definition InterchangeProjectSettings.cpp:56
static INTERCHANGEENGINE_API const FInterchangeImportSettings & GetDefaultImportSettings(const bool bIsSceneImport)
Definition InterchangeProjectSettings.cpp:68
static INTERCHANGEENGINE_API void SetDefaultPipelineStackName(const bool bIsSceneImport, const UInterchangeSourceData &SourceData, const FName StackName)
Definition InterchangeProjectSettings.cpp:112
static INTERCHANGEENGINE_API const FInterchangeGroup & GetUsedGroup(FInterchangeGroup::EUsedGroupStatus &UsedGroupStatus)
Definition InterchangeProjectSettings.cpp:261
static INTERCHANGEENGINE_API bool ShouldShowPipelineStacksConfigurationDialog(const bool bIsSceneImport, const bool bReImport, const UInterchangeSourceData &SourceData)
Definition InterchangeProjectSettings.cpp:151
static INTERCHANGEENGINE_API const FInterchangeImportSettings & GetImportSettings(const UInterchangeProjectSettings &InterchangeProjectSettings, const bool bIsSceneImport)
Definition InterchangeProjectSettings.cpp:44
static INTERCHANGEENGINE_API TArray< FName > GetGroupNames()
Definition InterchangeProjectSettings.cpp:289
Definition NameTypes.h:617
Definition InterchangeCore.Build.cs:6
Definition InterchangeEngine.Build.cs:6
Definition Array.h:670
Definition UnrealString.h.inl:34
Definition SoftObjectPtr.h:763
Definition DeveloperSettings.h:24
Definition InterchangeProjectSettings.h:272
Definition InterchangeFilePickerBase.h:40
Definition InterchangePipelineBase.h:217
Definition InterchangePipelineConfigurationBase.h:38
Definition InterchangeProjectSettings.h:242
Definition InterchangeProjectSettings.h:169
Definition InterchangeSourceData.h:23
Definition InterchangeTranslatorBase.h:68
Definition Object.h:95
@ false
Definition radaudio_common.h:23
Definition Guid.h:109
Definition InterchangeProjectSettings.h:115
Definition InterchangeProjectSettings.h:63
Definition InterchangeProjectSettings.h:128
EUsedGroupStatus
Definition InterchangeProjectSettings.h:132
@ SetAndValid
Definition InterchangeProjectSettings.h:134
@ NotSet
Definition InterchangeProjectSettings.h:133
Definition InterchangeProjectSettings.h:80
Definition InterchangeProjectSettings.h:46
Definition InterchangeProjectSettings.h:32
Definition InterchangeProjectSettings.h:106
Definition InterchangeProjectSettings.h:20
Definition UnrealType.h:6865
Definition SoftObjectPath.h:56