SceneImportSettings
SceneImportSettings
#Overview
name: SceneImportSettings
The value of this variable can be defined or overridden in .ini config files. 1
.ini config file referencing this setting variable.
It is referenced in 3
C++ source files.
#Summary
#Usage in the C++ source code
The purpose of SceneImportSettings is to store and manage configuration settings specifically for importing scenes into Unreal Engine 5. This variable is part of the Interchange system, which is responsible for importing various types of content into the engine.
The Interchange module within Unreal Engine 5 relies on this setting variable. Specifically, it’s used by the InterchangeProjectSettings class, which is part of the Interchange Engine subsystem.
The value of this variable is set in the UInterchangeProjectSettings class, which inherits from UDeveloperSettings. This means it can be configured through the project settings in the Unreal Editor.
SceneImportSettings interacts with ContentImportSettings, another variable in the same class. The system chooses between these two settings based on whether the import operation is for a scene or for other content.
Developers should be aware that this variable is specifically for scene imports, as opposed to individual asset imports. It’s important to distinguish between these two types of imports when working with the Interchange system.
Best practices when using this variable include:
- Ensuring that scene-specific import settings are correctly configured in the project settings.
- Being aware of the difference between scene imports and content imports, and using the appropriate settings for each.
- Understanding that changes to these settings will affect all scene imports in the project, so modifications should be made carefully and with consideration for all use cases.
- Documenting any custom settings used for specific projects to ensure consistency across the development team.
#Setting Variables
#References In INI files
Location: <Workspace>/Engine/Config/BaseEngine.ini:3500, section: [/Script/InterchangeEngine.InterchangeProjectSettings]
- INI Section:
/Script/InterchangeEngine.InterchangeProjectSettings
- Raw value:
(PipelineStacks=(("Scene", (Pipelines=("/Interchange/Pipelines/DefaultSceneAssetsPipeline.DefaultSceneAssetsPipeline","/Interchange/Pipelines/DefaultSceneLevelPipeline.DefaultSceneLevelPipeline"),PerTranslatorPipelines=((Translator="/Script/InterchangeImport.InterchangeMaterialXTranslator",Pipelines=("/Interchange/Pipelines/DefaultSceneAssetsPipeline.DefaultSceneAssetsPipeline","/Interchange/Pipelines/DefaultSceneLevelPipeline.DefaultSceneLevelPipeline","/Interchange/Pipelines/DefaultMaterialXPipeline.DefaultMaterialXPipeline")),(Translator="/Script/InterchangeImport.InterchangeGLTFTranslator",Pipelines=("/Interchange/Pipelines/DefaultGLTFSceneAssetsPipeline.DefaultGLTFSceneAssetsPipeline","/Interchange/Pipelines/DefaultSceneLevelPipeline.DefaultSceneLevelPipeline","/Interchange/Pipelines/DefaultGLTFPipeline.DefaultGLTFPipeline")))))),DefaultPipelineStack="Scene",ImportDialogClass="/Script/InterchangeEditorPipelines.InterchangePipelineConfigurationGeneric",bShowImportDialog=True)
- Is Array:
False
#References in C++ code
#Callsites
This variable is referenced in the following C++ source code:
#Loc: <Workspace>/Engine/Source/Runtime/Interchange/Engine/Private/InterchangeProjectSettings.cpp:8
Scope (from outer to inner):
file
function const FInterchangeImportSettings& FInterchangeProjectSettingsUtils::GetImportSettings
Source code excerpt:
if (bIsSceneImport)
{
return InterchangeProjectSettings.SceneImportSettings;
}
else
{
return InterchangeProjectSettings.ContentImportSettings;
}
}
#Loc: <Workspace>/Engine/Source/Runtime/Interchange/Engine/Private/InterchangeProjectSettings.cpp:20
Scope (from outer to inner):
file
function FInterchangeImportSettings& FInterchangeProjectSettingsUtils::GetMutableImportSettings
Source code excerpt:
if (bIsSceneImport)
{
return InterchangeProjectSettings.SceneImportSettings;
}
else
{
return InterchangeProjectSettings.ContentImportSettings;
}
}
#Loc: <Workspace>/Engine/Source/Runtime/Interchange/Engine/Public/InterchangeProjectSettings.h:115
Scope (from outer to inner):
file
class class UInterchangeProjectSettings : public UDeveloperSettings
Source code excerpt:
*/
UPROPERTY(EditAnywhere, config, Category = "ImportIntoLevel")
FInterchangeImportSettings SceneImportSettings;
/** This tells Interchange which file picker class to construct when we need to choose a file for a source. */
UPROPERTY(EditAnywhere, config, Category = "EditorInterface")
TSoftClassPtr <UInterchangeFilePickerBase> FilePickerClass;
/**