UGTK cat mascotUGTKengine within an engine Request access

UGTK / Toolkit / Gameplay Systems / First Person 3D Completed

Gameplay Systems — UGTK

First Person 3D

Summary

First-person controller for a CharacterController: movement, mouse/stick look and jump driven through the UGTK KeyInputActionSystem, reusing the UGTK movement and jump components.


Content


Modules Dependencies


Setup

Add a CharacterController and Mn_FirstPersonPlayerController to the player, attach Mn_CharacterControllerMovementComponent and Mn_CharacterControllerJumpComponent (as UGTK component children), set the camera pivot, and make sure a KeyInputActionSystem prefab/system is present in the scene.


How To Use


Testing Scene

Open FirstPerson3DTest in the module's Debug/ folder.

What to do, in order:

  1. Walk with the keys, then look around with the mouse.
  2. Jump, and jump again the instant you land.
  3. Walk into a slope and into a step.
  4. Press RequestCursorUnlock() from the inspector.

Step 4 is the one you will use constantly: a first-person controller locks the pointer, and once locked the inspector is unreachable without stopping the game — so tuning a value means losing the position you were testing from.

The recording is step 1: the mouse turns the view - watch the sun travel across the sky - and W walks forward. The demo scene is a bare floor with nothing on it, so the horizon and the sun are the only landmarks; drop a couple of boxes in before you try steps 2 and 3, or there is nothing to jump onto and no slope to walk into.


Technical Info


© 2026 Marcello De Bonis. All rights reserved

Real dependenciesOpen in the map →

Depends on 5

Used by 0

  • No other module depends on it.

Measured from the repository: code references (asmdef) plus prefab and asset GUIDs. Importing this module alone brings in 10 modules in total.