bDisableSearchResultTemplates

bDisableSearchResultTemplates

#Overview

name: bDisableSearchResultTemplates

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 bDisableSearchResultTemplates is to control the use of search result templates in the Blueprint search functionality within Unreal Engine 5. This setting variable is primarily related to the Blueprint search system and optimization of search performance.

This setting variable is primarily used in the Kismet module, which is responsible for handling Blueprint-related functionality in the Unreal Engine editor. Specifically, it is part of the FFindInBlueprintSearchManager class, which manages Blueprint searches.

The value of this variable is set in the Initialize function of FFindInBlueprintSearchManager, where it reads the setting from the GEditorIni configuration file under the “BlueprintSearchSettings” section.

bDisableSearchResultTemplates interacts with the ShouldEnableSearchResultTemplates() function, which returns the inverse of this variable’s value. This function is likely used throughout the search system to determine whether to use search result templates or not.

Developers should be aware that enabling this variable (setting it to true) will disable the use of search result templates. This can slightly decrease overall memory usage but may increase global search times. The trade-off between memory usage and search performance should be considered when deciding whether to enable or disable this feature.

Best practices when using this variable include:

  1. Consider the specific needs of your project regarding memory usage vs. search performance.
  2. If you’re experiencing memory issues and can tolerate slightly slower Blueprint searches, you might want to enable this setting.
  3. For projects with a large number of Blueprints where search performance is critical, it’s generally better to keep this setting disabled (false).
  4. Monitor the performance impact of changing this setting in your specific project to determine the optimal configuration.
  5. Document any changes to this setting in your project’s configuration management system, as it can have a noticeable impact on the development workflow.

#Setting Variables

#References In INI files

Location: <Workspace>/Engine/Config/BaseEditor.ini:542, section: [BlueprintSearchSettings]

#References in C++ code

#Callsites

This variable is referenced in the following C++ source code:

#Loc: <Workspace>/Engine/Source/Editor/Kismet/Private/FindInBlueprintManager.cpp:2043

Scope (from outer to inner):

file
function     FFindInBlueprintSearchManager::FFindInBlueprintSearchManager

Source code excerpt:

	, bEnableCSVStatsProfiling(false)
	, bEnableDeveloperMenuTools(false)
	, bDisableSearchResultTemplates(false)
	, bDisableImmediateAssetDiscovery(false)
{
	for (int32 TabIdx = 0; TabIdx < UE_ARRAY_COUNT(GlobalFindResultsTabIDs); TabIdx++)
	{
		const FName TabID = FName(*FString::Printf(TEXT("GlobalFindResults_%02d"), TabIdx + 1));
		GlobalFindResultsTabIDs[TabIdx] = TabID;

#Loc: <Workspace>/Engine/Source/Editor/Kismet/Private/FindInBlueprintManager.cpp:2084

Scope (from outer to inner):

file
function     void FFindInBlueprintSearchManager::Initialize

Source code excerpt:

	GConfig->GetBool(TEXT("BlueprintSearchSettings"), TEXT("bEnableCsvStatsProfiling"), bEnableCSVStatsProfiling, GEditorIni);
	GConfig->GetBool(TEXT("BlueprintSearchSettings"), TEXT("bEnableDeveloperMenuTools"), bEnableDeveloperMenuTools, GEditorIni);
	GConfig->GetBool(TEXT("BlueprintSearchSettings"), TEXT("bDisableSearchResultTemplates"), bDisableSearchResultTemplates, GEditorIni);
	GConfig->GetBool(TEXT("BlueprintSearchSettings"), TEXT("bDisableImmediateAssetDiscovery"), bDisableImmediateAssetDiscovery, GEditorIni);

#if CSV_PROFILER
	// If profiling has been enabled, turn on the stat category and begin a capture.
	if (bEnableCSVStatsProfiling)
	{

#Loc: <Workspace>/Engine/Source/Editor/Kismet/Public/FindInBlueprintManager.h:685

Scope (from outer to inner):

file
class        class FFindInBlueprintSearchManager : public FTickableEditorObject
function     bool ShouldEnableSearchResultTemplates

Source code excerpt:


	/** If TRUE, search result meta will be gathered once and stored in a template. Avoids doing this work redundantly at search time. */
	bool ShouldEnableSearchResultTemplates() const { return !bDisableSearchResultTemplates; }

	/** Find or create the global find results widget */
	TSharedPtr<SFindInBlueprints> GetGlobalFindResults();

	/** Enable or disable the global find results tab feature */
	void EnableGlobalFindResults(bool bEnable);

#Loc: <Workspace>/Engine/Source/Editor/Kismet/Public/FindInBlueprintManager.h:896

Scope (from outer to inner):

file
class        class FFindInBlueprintSearchManager : public FTickableEditorObject

Source code excerpt:


	/** Disable the use of search result templates. Setting this to TRUE will slightly decrease overall memory usage, but will also increase global search times */
	bool bDisableSearchResultTemplates;

	/** Defers the cost to extract metadata for each discovered asset during the initial asset registry scan into a single pass over the full asset registry once the scan is complete. */
	bool bDisableImmediateAssetDiscovery;
};

struct KISMET_API FDisableGatheringDataOnScope