unreal.FallingMode

class unreal.FallingMode(outer: Object | None = None, name: Name | str = 'None')

Bases: BaseMovementMode

FallingMode: a default movement mode for moving through the air and jumping, typically influenced by gravity and air control

C++ Source:

  • Plugin: Mover

  • Module: Mover

  • File: FallingMode.h

Editor Properties: (see get_editor_property/set_editor_property)

  • air_control_percentage (float): [Read-Write] When falling, amount of movement control available to the actor. 0 = no control, 1 = full control

  • falling_deceleration (float): [Read-Write] Deceleration to apply to air movement when falling slower than terminal velocity. Note: This is NOT applied to vertical velocity, only movement plane velocity

  • on_landed (Mover_OnLanded): [Read-Write] Broadcast when this actor lands on a valid surface.

  • over_terminal_speed_falling_deceleration (float): [Read-Write] Deceleration to apply to air movement when falling faster than terminal velocity Note: This is NOT applied to vertical velocity, only movement plane velocity

  • shared_settings_class (type(Class)): [Read-Write] Settings object type that this mode depends on. May be shared with other movement modes. When the mode is added to a Mover Component, it will create a shared instance of this settings class.

  • should_clamp_terminal_vertical_speed (bool): [Read-Write] When exceeding maximum vertical speed, should it be enforced via a hard clamp? If false, VerticalFallingDeceleration will be used for a smoother transition to the terminal speed limit.

  • terminal_movement_plane_speed (float): [Read-Write] If the actor’s movement plane velocity is greater than this speed falling will start applying OverTerminalSpeedFallingDeceleration instead of FallingDeceleration The expected behavior is to set OverTerminalSpeedFallingDeceleration higher than FallingDeceleration so the actor will slow down faster when going over TerminalMovementPlaneSpeed.

  • terminal_vertical_speed (float): [Read-Write] If the actors vertical velocity is greater than this speed VerticalFallingDeceleration will be applied to vertical velocity

  • transitions (Array[BaseMovementModeTransition]): [Read-Write] Transition checks for the current mode. Evaluated in order, stopping at the first successful transition check

  • vertical_falling_deceleration (float): [Read-Write] Deceleration to apply to vertical velocity when it’s greater than TerminalVerticalSpeed. Only used if bShouldClampTerminalVerticalSpeed is false.

property air_control_percentage: float

[Read-Write] When falling, amount of movement control available to the actor. 0 = no control, 1 = full control

Type:

(float)

property falling_deceleration: float

[Read-Write] Deceleration to apply to air movement when falling slower than terminal velocity. Note: This is NOT applied to vertical velocity, only movement plane velocity

Type:

(float)

on_generate_move(start_state, time_step) ProposedMove

On Generate Move

Parameters:
Returns:

out_proposed_move (ProposedMove):

Return type:

ProposedMove

property on_landed: Mover_OnLanded

[Read-Write] Broadcast when this actor lands on a valid surface.

Type:

(Mover_OnLanded)

on_simulation_tick(params) MoverTickEndData

On Simulation Tick

Parameters:

params (SimulationTickParams) –

Returns:

output_state (MoverTickEndData):

Return type:

MoverTickEndData

property over_terminal_speed_falling_deceleration: float

[Read-Write] Deceleration to apply to air movement when falling faster than terminal velocity Note: This is NOT applied to vertical velocity, only movement plane velocity

Type:

(float)

process_landed(floor_result) -> (velocity=Vector, base_info=RelativeBaseInfo, tick_end_data=MoverTickEndData)

Is called at the end of the tick in falling mode. Handles checking any landings that should occur and switching to specific modes (i.e. landing on a walkable surface would switch to the walking movement mode)

Parameters:

floor_result (FloorCheckResult) –

Returns:

velocity (Vector):

base_info (RelativeBaseInfo):

tick_end_data (MoverTickEndData):

Return type:

tuple

property should_clamp_terminal_vertical_speed: bool

[Read-Write] When exceeding maximum vertical speed, should it be enforced via a hard clamp? If false, VerticalFallingDeceleration will be used for a smoother transition to the terminal speed limit.

Type:

(bool)

property terminal_movement_plane_speed: float

[Read-Write] If the actor’s movement plane velocity is greater than this speed falling will start applying OverTerminalSpeedFallingDeceleration instead of FallingDeceleration The expected behavior is to set OverTerminalSpeedFallingDeceleration higher than FallingDeceleration so the actor will slow down faster when going over TerminalMovementPlaneSpeed.

Type:

(float)

property terminal_vertical_speed: float

[Read-Write] If the actors vertical velocity is greater than this speed VerticalFallingDeceleration will be applied to vertical velocity

Type:

(float)

property vertical_falling_deceleration: float

[Read-Write] Deceleration to apply to vertical velocity when it’s greater than TerminalVerticalSpeed. Only used if bShouldClampTerminalVerticalSpeed is false.

Type:

(float)