While the system is designed to work out of the box, there are several settings you can tweak to better fit your project.

In this section, you’ll learn how to customize movement behavior, controls, animations, and more.

  1. Controls
  2. Swimming Volume - BP_SwimmingVolume
  3. Swimming Component - BPAC_SwimmingComponent
  4. Animations
  5. Oxygen Widget
  6. Event Dispatchers

Controls

<aside>

IMPORTANT: This system uses Enhanced Input to handle player inputs. If you’re using Unreal Engine 5, Enhanced Input should be enabled by default.

</aside>

💡 If you’re not familiar with Enhanced Input, feel free to check the official Unreal Engine documentation for more details.

How it works

When your character starts swimming, the BPAC_Swimming component automatically adds the IMC_Swimming Input mapping context.

This mapping context contains all the inputs used by the swimming system.

image.png

This mapping context is added with a priority of 1, which means it can override other inputs if they use the same keys.

image.png

How to customize controls

First of all, all input-related assets are located in /Swimming/Input.