ShowFlag.SelectionOutlineColor5

ShowFlag.SelectionOutlineColor5

#Overview

name: ShowFlag.SelectionOutlineColor5

This variable is created as a Console Variable (cvar).

It is referenced in 4 C++ source files.

#Summary

#Usage in the C++ source code

The purpose of ShowFlag.SelectionOutlineColor5 is to control the visibility of the fifth selection outline color in the Unreal Engine editor viewport. This setting is part of the editor’s visual feedback system, specifically for object selection and highlighting.

This setting variable is primarily used by the Source Control Viewport module, which is part of the Unreal Engine’s editor toolset. It’s not part of the core rendering system but rather a tool for developers to visualize source control status in the viewport.

The value of this variable is set in the SetOutlineSetting function within the SourceControlViewportUtils namespace. It’s typically toggled on or off based on the source control status of objects in the viewport.

The ShowFlag.SelectionOutlineColor5 interacts closely with other similar variables like SelectionOutlineColor3 and SelectionOutlineColor4. These variables are part of a set of outline colors used to represent different source control statuses.

Developers should be aware that this variable is marked as SHOWFLAG_FIXED_IN_SHIPPING, which means it’s only available in non-shipping builds. It’s intended for development and debugging purposes, not for use in final, shipped games.

Best practices when using this variable include:

  1. Only use it for editor-time visualization of source control status.
  2. Be aware that it’s not available in shipping builds, so don’t rely on it for any runtime game logic.
  3. Consider using it in conjunction with the other SelectionOutlineColor variables for a comprehensive source control status visualization system.

Regarding the associated variable SelectionOutlineColor5, it’s essentially the same variable, just accessed through different means. In the GetOutlineSetting and SetOutlineSetting functions, it’s accessed via the ViewportClient’s EngineShowFlags. The purpose and usage considerations are the same as described above for ShowFlag.SelectionOutlineColor5.

#References in C++ code

#Callsites

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

#Loc: <Workspace>/Engine/Source/Runtime/Engine/Public/ShowFlagsValues.inl:144

Scope: file

Source code excerpt:

SHOWFLAG_FIXED_IN_SHIPPING(0, SelectionOutlineColor3, SFG_Hidden, NSLOCTEXT("UnrealEd", "SelectionOutlineColor3", "Selection Outline Color 3"))
SHOWFLAG_FIXED_IN_SHIPPING(0, SelectionOutlineColor4, SFG_Hidden, NSLOCTEXT("UnrealEd", "SelectionOutlineColor4", "Selection Outline Color 4"))
SHOWFLAG_FIXED_IN_SHIPPING(0, SelectionOutlineColor5, SFG_Hidden, NSLOCTEXT("UnrealEd", "SelectionOutlineColor5", "Selection Outline Color 5"))
/** If screen space reflections are enabled, for now SHOWFLAG_ALWAYS_ACCESSIBLE because it's exposed in SceneCapture */
SHOWFLAG_ALWAYS_ACCESSIBLE(ScreenSpaceReflections, SFG_LightingFeatures, NSLOCTEXT("UnrealEd", "ScreenSpaceReflectionsSF", "Screen Space Reflections"))
SHOWFLAG_ALWAYS_ACCESSIBLE(LumenReflections, SFG_LightingFeatures, NSLOCTEXT("UnrealEd", "LumenReflectionsSF", "Lumen Reflections"))
/** If Screen space contact shadows are enabled. */
SHOWFLAG_ALWAYS_ACCESSIBLE(ContactShadows, SFG_LightingFeatures, NSLOCTEXT("UnrealEd", "ContactShadows", "Screen Space Contact Shadows"))
/** If RTDF shadows are enabled. */

#Associated Variable and Callsites

This variable is associated with another variable named SelectionOutlineColor5. They share the same value. See the following C++ source code.

#Loc: <Workspace>/Engine/Source/Developer/SourceControlViewport/Private/SourceControlViewportUtils.cpp:68

Scope (from outer to inner):

file
namespace    SourceControlViewportUtils
function     bool GetOutlineSetting

Source code excerpt:

		return ViewportClient->GetEngineShowFlags()->SelectionOutlineColor4;
	case 5:
		return ViewportClient->GetEngineShowFlags()->SelectionOutlineColor5;
	default:
		ensure(false);
		break;
	}

	return false;

#Loc: <Workspace>/Engine/Source/Developer/SourceControlViewport/Private/SourceControlViewportUtils.cpp:98

Scope (from outer to inner):

file
namespace    SourceControlViewportUtils
function     void SetOutlineSetting

Source code excerpt:

		break;
	case 5:
		ViewportClient->GetEngineShowFlags()->SelectionOutlineColor5 = bEnabled;
		break;
	default:
		ensure(false);
		break;
	}
}

#Loc: <Workspace>/Engine/Source/Runtime/Engine/Public/ShowFlagsValues.inl:144

Scope: file

Source code excerpt:

SHOWFLAG_FIXED_IN_SHIPPING(0, SelectionOutlineColor3, SFG_Hidden, NSLOCTEXT("UnrealEd", "SelectionOutlineColor3", "Selection Outline Color 3"))
SHOWFLAG_FIXED_IN_SHIPPING(0, SelectionOutlineColor4, SFG_Hidden, NSLOCTEXT("UnrealEd", "SelectionOutlineColor4", "Selection Outline Color 4"))
SHOWFLAG_FIXED_IN_SHIPPING(0, SelectionOutlineColor5, SFG_Hidden, NSLOCTEXT("UnrealEd", "SelectionOutlineColor5", "Selection Outline Color 5"))
/** If screen space reflections are enabled, for now SHOWFLAG_ALWAYS_ACCESSIBLE because it's exposed in SceneCapture */
SHOWFLAG_ALWAYS_ACCESSIBLE(ScreenSpaceReflections, SFG_LightingFeatures, NSLOCTEXT("UnrealEd", "ScreenSpaceReflectionsSF", "Screen Space Reflections"))
SHOWFLAG_ALWAYS_ACCESSIBLE(LumenReflections, SFG_LightingFeatures, NSLOCTEXT("UnrealEd", "LumenReflectionsSF", "Lumen Reflections"))
/** If Screen space contact shadows are enabled. */
SHOWFLAG_ALWAYS_ACCESSIBLE(ContactShadows, SFG_LightingFeatures, NSLOCTEXT("UnrealEd", "ContactShadows", "Screen Space Contact Shadows"))
/** If RTDF shadows are enabled. */