bFilterLandscape
bFilterLandscape
#Overview
name: bFilterLandscape
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 6
C++ source files.
#Summary
#Usage in the C++ source code
The purpose of bFilterLandscape is to control whether landscape objects should be included in the foliage painting process within the Unreal Engine 5 editor. This setting variable is part of the foliage editing system, specifically used in the Foliage Edit mode.
The Unreal Engine subsystem that relies on this setting variable is the Foliage Edit module, which is part of the editor’s landscaping and environment creation tools.
The value of this variable is set in multiple places:
- It is initialized to true in the FFoliageUISettings constructor.
- It can be loaded from the project’s configuration file using GConfig->GetBool() in the FFoliageUISettings::Load() function.
- It can be saved to the project’s configuration file using GConfig->SetBool() in the FFoliageUISettings::Save() function.
- It can be set programmatically using the SetFilterLandscape() function.
This variable interacts with other similar filtering variables such as bFilterStaticMesh, bFilterBSP, bFilterFoliage, and bFilterTranslucent. Together, these variables determine which types of objects in the scene can receive foliage during the painting process.
Developers must be aware that this variable affects the foliage painting behavior in the editor. When set to true, it allows foliage to be painted on landscape objects. When set to false, landscape objects will be excluded from foliage painting.
Best practices when using this variable include:
- Consider the performance implications of enabling or disabling landscape filtering, especially in large scenes.
- Use it in conjunction with other filtering options to achieve the desired foliage distribution.
- Remember to save the settings if you want the changes to persist between editor sessions.
- Be consistent in its usage across your project to maintain a coherent foliage painting workflow.
#Setting Variables
#References In INI files
Location: <Workspace>/Engine/Config/BaseEditorPerProjectUserSettings.ini:768, section: [FoliageEdit]
- INI Section:
FoliageEdit
- Raw value:
True
- Is Array:
False
#References in C++ code
#Callsites
This variable is referenced in the following C++ source code:
#Loc: <Workspace>/Engine/Source/Editor/FoliageEdit/Private/FoliageEdMode.cpp:4080
Scope (from outer to inner):
file
function void FFoliageUISettings::Load
Source code excerpt:
GConfig->GetFloat(TEXT("FoliageEdit"), TEXT("PaintDensity"), PaintDensity, GEditorPerProjectIni);
GConfig->GetFloat(TEXT("FoliageEdit"), TEXT("UnpaintDensity"), UnpaintDensity, GEditorPerProjectIni);
GConfig->GetBool(TEXT("FoliageEdit"), TEXT("bFilterLandscape"), bFilterLandscape, GEditorPerProjectIni);
GConfig->GetBool(TEXT("FoliageEdit"), TEXT("bFilterStaticMesh"), bFilterStaticMesh, GEditorPerProjectIni);
GConfig->GetBool(TEXT("FoliageEdit"), TEXT("bFilterBSP"), bFilterBSP, GEditorPerProjectIni);
GConfig->GetBool(TEXT("FoliageEdit"), TEXT("bFilterFoliage"), bFilterFoliage, GEditorPerProjectIni);
GConfig->GetBool(TEXT("FoliageEdit"), TEXT("bFilterTranslucent"), bFilterTranslucent, GEditorPerProjectIni);
GConfig->GetBool(TEXT("FoliageEdit"), TEXT("bShowPaletteItemDetails"), bShowPaletteItemDetails, GEditorPerProjectIni);
#Loc: <Workspace>/Engine/Source/Editor/FoliageEdit/Private/FoliageEdMode.cpp:4112
Scope (from outer to inner):
file
function void FFoliageUISettings::Save
Source code excerpt:
GConfig->SetFloat(TEXT("FoliageEdit"), TEXT("PaintDensity"), PaintDensity, GEditorPerProjectIni);
GConfig->SetFloat(TEXT("FoliageEdit"), TEXT("UnpaintDensity"), UnpaintDensity, GEditorPerProjectIni);
GConfig->SetBool(TEXT("FoliageEdit"), TEXT("bFilterLandscape"), bFilterLandscape, GEditorPerProjectIni);
GConfig->SetBool(TEXT("FoliageEdit"), TEXT("bFilterStaticMesh"), bFilterStaticMesh, GEditorPerProjectIni);
GConfig->SetBool(TEXT("FoliageEdit"), TEXT("bFilterBSP"), bFilterBSP, GEditorPerProjectIni);
GConfig->SetBool(TEXT("FoliageEdit"), TEXT("bFilterFoliage"), bFilterFoliage, GEditorPerProjectIni);
GConfig->SetBool(TEXT("FoliageEdit"), TEXT("bFilterTranslucent"), bFilterTranslucent, GEditorPerProjectIni);
GConfig->SetBool(TEXT("FoliageEdit"), TEXT("bShowPaletteItemDetails"), bShowPaletteItemDetails, GEditorPerProjectIni);
#Loc: <Workspace>/Engine/Source/Editor/FoliageEdit/Private/FoliageEdMode.h:102
Scope (from outer to inner):
file
function bool GetFilterLandscape
Source code excerpt:
float GetUnpaintDensity() const { return UnpaintDensity; }
void SetUnpaintDensity(float InUnpaintDensity) { UnpaintDensity = InUnpaintDensity; }
bool GetFilterLandscape() const { return bFilterLandscape ? true : false; }
void SetFilterLandscape(bool InbFilterLandscape) { bFilterLandscape = InbFilterLandscape; }
bool GetFilterStaticMesh() const { return bFilterStaticMesh ? true : false; }
void SetFilterStaticMesh(bool InbFilterStaticMesh) { bFilterStaticMesh = InbFilterStaticMesh; }
bool GetFilterBSP() const { return bFilterBSP ? true : false; }
void SetFilterBSP(bool InbFilterBSP) { bFilterBSP = InbFilterBSP; }
bool GetFilterFoliage() const { return bFilterFoliage; }
void SetFilterFoliage(bool InbFilterFoliage) { bFilterFoliage = InbFilterFoliage; }
#Loc: <Workspace>/Engine/Source/Editor/FoliageEdit/Private/FoliageEdMode.h:168
Scope (from outer to inner):
file
function FFoliageUISettings
Source code excerpt:
, SingleInstantiationCycleThroughIndex(0)
, IsInSpawnInCurrentLevelMode(false)
, bFilterLandscape(true)
, bFilterStaticMesh(true)
, bFilterBSP(true)
, bFilterFoliage(false)
, bFilterTranslucent(false)
{
}
#Loc: <Workspace>/Engine/Source/Editor/FoliageEdit/Private/FoliageEdMode.h:211
Scope: file
Source code excerpt:
public:
bool bFilterLandscape;
bool bFilterStaticMesh;
bool bFilterBSP;
bool bFilterFoliage;
bool bFilterTranslucent;
};
#Loc: <Workspace>/Engine/Source/Editor/FoliageEdit/Private/FoliageEdMode.h:284
Scope (from outer to inner):
file
function FFoliagePaintingGeometryFilter
Source code excerpt:
FFoliagePaintingGeometryFilter(const FFoliageUISettings& InUISettings)
: bAllowLandscape(InUISettings.bFilterLandscape)
, bAllowStaticMesh(InUISettings.bFilterStaticMesh)
, bAllowBSP(InUISettings.bFilterBSP)
, bAllowFoliage(InUISettings.bFilterFoliage)
, bAllowTranslucent(InUISettings.bFilterTranslucent)
{
}