A friction-based invisible wall?

:light_bulb: Recommended approach (used in many games)

Instead of relying on blocking collision, use a Trigger Volume (Box/Sphere Overlap) and handle the behavior manually:

1. Detect entry into boundary

  • Place a larger invisible volume where the “soft wall” starts.

  • Use OnComponentBeginOverlap to detect when the player enters it.

2. Gradually reduce player control

  • As the player gets closer to the edge, scale down their input or velocity.

  • For example:

    • Map distance → speed multiplier (1 → 0)

    • This creates that “pushing against resistance” feel
      :backhand_index_pointing_right: This is a known technique: mapping distance to movement limits instead of stopping instantly (Epic Developer Community Forums)

3. Apply opposite force (rubber band)

  • When inside the volume, apply a force or movement offset back toward the center:

    • Direction = (center − player position)

    • Strength increases the deeper they go

4. Release behavior

  • When player stops pushing, the force naturally pulls them back → gives that elastic feel

:brain: Alternative (simpler Blueprint logic)

A very common pattern suggested by UE devs:

  • First phase: slow player to a stop (~1 second)

  • Second phase: apply increasing force pushing them back

This creates a smooth 2–3 second interaction instead of a hard stop (Epic Developer Community Forums)


:gear: Implementation tips (important)

  • :cross_mark: Avoid pure blocking volumes → causes your “stuck” glitch

  • :white_check_mark: Use overlap + manual velocity control

  • :white_check_mark: Modify:

    • Max Fly Speed

    • or directly scale input axis

    • or use Add Force / Add Movement Input in reverse direction

  • :white_check_mark: Use a falloff curve (Float Curve asset) for smoothness

  • :white_check_mark: Clamp max pushback force so it doesn’t feel jerky


:video_game: Bonus: “Star Fox feel”

For that classic Star Fox boundary:

  • Use a camera-centered box

  • Always push player toward screen center (not world center)

  • Add slight camera shake or tilt when pushing → sells the effect


:puzzle_piece: TL;DR

  • No built-in UE5 feature for this

  • Don’t use hard collision

  • Use:
    Overlap Volume + distance-based slowdown + reverse force

  • Think of it as a soft constraint field, not a wall