IncludeSpecularMapCheck
IncludeSpecularMapCheck
#Overview
name: IncludeSpecularMapCheck
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 4
C++ source files.
#Summary
#Usage in the C++ source code
The purpose of IncludeSpecularMapCheck is to control whether specular maps should be included in the material creation process for SpeedTree assets when importing them into Unreal Engine.
This setting variable is primarily used by the SpeedTree Importer plugin, which is part of the Unreal Engine editor tools. It’s specifically utilized in the material creation process for SpeedTree assets.
The value of this variable is set through the Unreal Engine editor interface. It’s defined as a UPROPERTY with the EditAnywhere and config flags, which means it can be edited in the editor and its value is saved in configuration files.
IncludeSpecularMapCheck interacts with other import settings for SpeedTree assets, such as IncludeNormalMapCheck, IncludeDetailMapCheck, and others. These settings collectively determine which texture maps and features are included in the imported SpeedTree material.
Developers must be aware that this variable affects the complexity and performance of the resulting material. Including specular maps can enhance the visual quality of SpeedTree assets but may also increase memory usage and rendering costs.
Best practices when using this variable include:
- Only enable it when specular maps are necessary for the desired visual quality.
- Consider the performance implications, especially for projects targeting lower-end hardware.
- Ensure that the SpeedTree asset actually includes specular map data; enabling this option without corresponding data in the asset will not produce the desired effect.
- Use it in conjunction with other import settings to achieve the best balance between visual quality and performance for your project’s needs.
- Remember to adjust related material parameters after import if necessary, as the inclusion of specular maps may affect the overall appearance of the material.
#Setting Variables
#References In INI files
Location: <Workspace>/Engine/Config/BaseEditorPerProjectUserSettings.ini:947, section: [/Script/SpeedTreeImporter.SpeedTreeImportData]
- INI Section:
/Script/SpeedTreeImporter.SpeedTreeImportData
- Raw value:
false
- Is Array:
False
#References in C++ code
#Callsites
This variable is referenced in the following C++ source code:
#Loc: <Workspace>/Engine/Plugins/Editor/SpeedTreeImporter/Source/SpeedTreeImporter/Classes/SpeedTreeImportData.h:77
Scope (from outer to inner):
file
class class USpeedTreeImportData : public UAssetImportData
Source code excerpt:
/** */
UPROPERTY(EditAnywhere, config, Category = Materials, meta = (EditCondition = "MakeMaterialsCheck", DisplayName = "Include Specular Maps"))
uint32 IncludeSpecularMapCheck : 1;
/** */
UPROPERTY(EditAnywhere, config, Category = Materials, meta = (EditCondition = "MakeMaterialsCheck", DisplayName = "Include Branch Seam Smoothing"))
uint32 IncludeBranchSeamSmoothing : 1;
/** */
#Loc: <Workspace>/Engine/Plugins/Editor/SpeedTreeImporter/Source/SpeedTreeImporter/Private/SpeedTreeImportData.cpp:43
Scope (from outer to inner):
file
function void USpeedTreeImportData::CopyFrom
Source code excerpt:
IncludeNormalMapCheck = Other->IncludeNormalMapCheck;
IncludeDetailMapCheck = Other->IncludeDetailMapCheck;
IncludeSpecularMapCheck = Other->IncludeSpecularMapCheck;
IncludeBranchSeamSmoothing = Other->IncludeBranchSeamSmoothing;
IncludeSpeedTreeAO = Other->IncludeSpeedTreeAO;
IncludeColorAdjustment = Other->IncludeColorAdjustment;
IncludeSubsurface = Other->IncludeSubsurface;
IncludeVertexProcessingCheck = Other->IncludeVertexProcessingCheck;
IncludeWindCheck = Other->IncludeWindCheck;
#Loc: <Workspace>/Engine/Plugins/Editor/SpeedTreeImporter/Source/SpeedTreeImporter/Private/SpeedTreeImportFactory.cpp:704
Scope (from outer to inner):
file
function UMaterialInterface* CreateSpeedTreeMaterial7
Source code excerpt:
}
}
if (SpeedTreeImportData->IncludeSpecularMapCheck)
{
UTexture* SpecularTexture = CreateSpeedTreeMaterialTexture(Parent, ANSI_TO_TCHAR(RenderState->m_apTextures[SpeedTree::TL_SPECULAR_MASK]), false, false, LoadedPackages, ImportContext);
}
if (SpeedTreeImportData->IncludeNormalMapCheck)
{
UTexture* NormalTexture = CreateSpeedTreeMaterialTexture(Parent, ANSI_TO_TCHAR(RenderState->m_apTextures[SpeedTree::TL_NORMAL]), true, false, LoadedPackages, ImportContext);
#Loc: <Workspace>/Engine/Plugins/Editor/SpeedTreeImporter/Source/SpeedTreeImporter/Private/SpeedTreeImportFactory.cpp:836
Scope (from outer to inner):
file
function UMaterialInterface* CreateSpeedTreeMaterial7
Source code excerpt:
bool bMadeSpecular = false;
if (SpeedTreeImportData->IncludeSpecularMapCheck)
{
UTexture* SpecularTexture = CreateSpeedTreeMaterialTexture(Parent, ANSI_TO_TCHAR(RenderState->m_apTextures[SpeedTree::TL_SPECULAR_MASK]), false, false, LoadedPackages, ImportContext);
if (SpecularTexture)
{
// make texture sampler
UMaterialExpressionTextureSample* TextureExpression = NewObject<UMaterialExpressionTextureSample>(UnrealMaterial);