bShowWorldMovementPostProcess

bShowWorldMovementPostProcess

#Overview

name: bShowWorldMovementPostProcess

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 3 C++ source files.

#Summary

#Usage in the C++ source code

The purpose of bShowWorldMovementPostProcess is to control the visibility of a post-processing effect that dims the surroundings while moving through the world in VR mode. This setting is primarily used for the VR editing experience in Unreal Engine.

This setting variable is utilized by the VR Editor subsystem of Unreal Engine. Specifically, it’s used within the VREditorAvatarActor class, which is part of the VR editing module.

The value of this variable is set in the VRModeSettings class, which is likely configurable through the engine’s settings interface or configuration files.

This variable interacts with a PostProcessComponent in the VREditorAvatarActor. When enabled, it activates a post-processing effect that helps prevent simulation sickness during world movement, rotation, or scaling in VR.

Developers should be aware that this setting can significantly impact the user experience in VR editing mode. Enabling it can help reduce motion sickness for some users, but it may also affect visibility and immersion.

Best practices when using this variable include:

  1. Consider making it user-configurable, as sensitivity to motion in VR varies among individuals.
  2. Test the VR editing experience both with and without this setting enabled to ensure optimal usability.
  3. Be mindful of performance implications, as post-processing effects can be resource-intensive.
  4. Ensure that the dimming effect doesn’t interfere with critical visual information needed for editing tasks.

#Setting Variables

#References In INI files

Location: <Workspace>/Engine/Config/BaseEditorSettings.ini:55, section: [/Script/VREditor.VRModeSettings]

#References in C++ code

#Callsites

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

#Loc: <Workspace>/Engine/Source/Editor/VREditor/Private/VREditorAvatarActor.cpp:232

Scope (from outer to inner):

file
function     void AVREditorAvatarActor::Init

Source code excerpt:


		// Unlimited size
		PostProcessComponent->bEnabled = GetDefault<UVRModeSettings>()->bShowWorldMovementPostProcess;
		PostProcessComponent->bUnbound = true;
	}

	// Set the default color for the progress bar
	{
		static FName StaticLaserColorName( "LaserColor" );

#Loc: <Workspace>/Engine/Source/Editor/VREditor/Private/VREditorAvatarActor.cpp:434

Scope (from outer to inner):

file
function     void AVREditorAvatarActor::TickManually

Source code excerpt:

	// prevent simulation sickness when moving/rotating/scaling the entire world around them.
	{
		PostProcessComponent->bEnabled = GetDefault<UVRModeSettings>()->bShowWorldMovementPostProcess;

		// Make sure our world size is reflected in the post process material
		static FName WorldScaleFactorParameterName( "WorldScaleFactor" );
		WorldMovementPostProcessMaterial->SetScalarParameterValue( WorldScaleFactorParameterName, WorldScaleFactor );

		static FName RoomOriginParameterName( "RoomOrigin" );

#Loc: <Workspace>/Engine/Source/Editor/VREditor/Public/VRModeSettings.h:55

Scope (from outer to inner):

file
class        class UVRModeSettings : public UVISettings

Source code excerpt:

	/** Dim the surroundings while moving through the world */
	UPROPERTY(EditAnywhere, config, Category = "World Movement")
	uint32 bShowWorldMovementPostProcess : 1;

	/** Display a progress bar while scaling that shows your current scale */
	UPROPERTY(EditAnywhere, config, Category = "UI Customization")
	uint32 bShowWorldScaleProgressBar : 1;

	/** Adjusts the brightness of the UI panels */