bKeepPlayRangeInSectionBounds
bKeepPlayRangeInSectionBounds
#Overview
name: bKeepPlayRangeInSectionBounds
The value of this variable can be defined or overridden in .ini config files. 6
.ini config files referencing this setting variable.
It is referenced in 3
C++ source files.
#Summary
#Usage in the C++ source code
The purpose of bKeepPlayRangeInSectionBounds is to control whether the playback range in the Sequencer should be constrained within the bounds of the currently selected section. This setting is part of the timeline management system in Unreal Engine’s Sequencer tool.
This setting variable is primarily used in the Sequencer module of Unreal Engine’s Editor subsystem. It’s specifically part of the USequencerSettings class, which manages various configuration options for the Sequencer.
The value of this variable is initially set to true in the USequencerSettings constructor. It can be modified through the Sequencer settings interface in the Unreal Editor, as it’s exposed as an editable property with the UPROPERTY macro.
The variable interacts with other Sequencer settings, particularly those related to timeline and playback management. It works in conjunction with the playback range and section bounds logic in the Sequencer.
Developers should be aware that changing this setting will affect how the Sequencer behaves when manipulating the playback range. When set to true, it prevents users from setting a playback range that extends beyond the current section’s boundaries.
Best practices for using this variable include:
- Consider the needs of your specific project when deciding whether to keep this enabled or disabled.
- If you’re working on a complex sequence with multiple sections, keeping this enabled can help prevent accidental playback of unintended parts of the sequence.
- Be aware that changing this setting might affect existing sequences in your project, so it’s advisable to communicate any changes to the entire development team.
- If you’re programmatically manipulating the Sequencer, use the provided getter (ShouldKeepPlayRangeInSectionBounds()) and setter (SetKeepPlayRangeInSectionBounds()) methods instead of directly accessing the variable.
#Setting Variables
#References In INI files
Location: <Workspace>/Engine/Config/BaseEditorPerProjectUserSettings.ini:852, section: [LevelSequenceEditor SequencerSettings]
- INI Section:
LevelSequenceEditor SequencerSettings
- Raw value:
false
- Is Array:
False
Location: <Workspace>/Engine/Config/BaseEditorPerProjectUserSettings.ini:860, section: [TemplateSequenceEditor SequencerSettings]
- INI Section:
TemplateSequenceEditor SequencerSettings
- Raw value:
false
- Is Array:
False
Location: <Workspace>/Engine/Config/BaseEditorPerProjectUserSettings.ini:868, section: [TakeRecorderSequenceEditor SequencerSettings]
- INI Section:
TakeRecorderSequenceEditor SequencerSettings
- Raw value:
false
- Is Array:
False
Location: <Workspace>/Engine/Config/BaseEditorPerProjectUserSettings.ini:878, section: [EmbeddedActorSequenceEditor SequencerSettings]
- INI Section:
EmbeddedActorSequenceEditor SequencerSettings
- Raw value:
false
- Is Array:
False
Location: <Workspace>/Engine/Config/BaseEditorPerProjectUserSettings.ini:886, section: [NiagaraSequenceEditor SequencerSettings]
- INI Section:
NiagaraSequenceEditor SequencerSettings
- Raw value:
false
- Is Array:
False
Location: <Workspace>/Engine/Config/BaseEditorPerProjectUserSettings.ini:905, section: [DaySequenceEditor SequencerSettings]
- INI Section:
DaySequenceEditor SequencerSettings
- Raw value:
false
- Is Array:
False
#References in C++ code
#Callsites
This variable is referenced in the following C++ source code:
#Loc: <Workspace>/Engine/Source/Editor/Sequencer/Private/SequencerSettings.cpp:41
Scope (from outer to inner):
file
function USequencerSettings::USequencerSettings
Source code excerpt:
bResetPlayheadWhenNavigating = false;
bKeepCursorInPlayRangeWhileScrubbing = false;
bKeepPlayRangeInSectionBounds = true;
bCompileDirectorOnEvaluate = true;
bLeftMouseDragDoesMarquee = false;
ZeroPadFrames = 0;
JumpFrameIncrement = FFrameNumber(5);
bShowLayerBars = true;
bShowKeyBars = true;
#Loc: <Workspace>/Engine/Source/Editor/Sequencer/Private/SequencerSettings.cpp:495
Scope (from outer to inner):
file
function bool USequencerSettings::ShouldKeepPlayRangeInSectionBounds
Source code excerpt:
bool USequencerSettings::ShouldKeepPlayRangeInSectionBounds() const
{
return bKeepPlayRangeInSectionBounds;
}
void USequencerSettings::SetKeepPlayRangeInSectionBounds(bool bInKeepPlayRangeInSectionBounds)
{
if (bKeepPlayRangeInSectionBounds != bInKeepPlayRangeInSectionBounds)
{
bKeepPlayRangeInSectionBounds = bInKeepPlayRangeInSectionBounds;
SaveConfig();
}
}
bool USequencerSettings::GetLinkCurveEditorTimeRange() const
#Loc: <Workspace>/Engine/Source/Editor/Sequencer/Public/SequencerSettings.h:612
Scope (from outer to inner):
file
class class USequencerSettings : public UObject
Source code excerpt:
/** Enable or disable keeping the playback range constrained to the section bounds. */
UPROPERTY( config, EditAnywhere, Category=Timeline )
bool bKeepPlayRangeInSectionBounds;
/** The number of zeros to pad the frame numbers by. */
UPROPERTY( config, EditAnywhere, Category=Timeline )
uint8 ZeroPadFrames;
/** The number of frames to jump by when jumping forward or backwards. */