MFPC - Modular First Person Controller OFFICIAL SALE

MFPC – Modular First Person Controller

MFPC is a clean, extensible first person character controller designed for developers who want full control over their project architecture.

It provides a solid, production-ready foundation for FPS, immersive sims, walking simulators, and narrative experiences — without forcing opinions about animation, UI, or gameplay systems.

MFPC is controller-first, not demo-first.

Take a look at the WebGL demo, documentation, roadmap and join the discord server!


Movement & Player State

  • Walk, Sprint, and Crouch
  • Hold or Toggle modes (configurable)
  • Forward-only sprint restriction
  • Lean left / right with smooth interpolation
  • Jump with gravity tuning
  • Collision-safe auto-uncrouch
  • Optional auto-unsprint when stopping movement (for toggle mode)
  • Optional advanced slope handling
  • Physics interactions with environment.

Movement is predictable, tweakable, and free from hidden behavior.



Input Systems

  • Legacy Input System controller
  • New Input System controller
  • Mouse + keyboard support
  • Gamepad support (tested with multiple controllers)
  • Sensitivity parity between input systems
  • Frame-rate independent mouse smoothing (New Input System)

Choose the input workflow that fits your project — or swap later without rewriting logic.



Camera System (Cinemachine-based)

MFPC is built around Cinemachine, not custom camera math.

  • Virtual Camera setup for: idle, walk, sprint, crouch, aim
  • FOV kick on sprint (via Virtual Camera swap)
  • Headbob via Cinemachine Noise (no custom scripts)
  • Separate aim camera variants
  • Clean integration with camera stacks

You control the camera behavior visually — no black-box logic.



Audio System

  • Surface-based footsteps and landing sounds
  • Terrain and object support
  • Water surface handling
  • Audio pooling (no runtime instantiation spikes)
  • Easy to extend with ScriptableObjects

Creating new surface sounds:

  • Create a new SurfaceSFX asset
  • Assign terrain layers or
  • Add an ObjectLayer component to scene objects

No hardcoded layers. No forced setup.



Architecture & Design Philosophy

MFPC is intentionally not an all-in-one solution.

  • No forced Animator Controller
  • No stamina system assumptions
  • No UI or HUD dependencies
  • No required layers or tags
  • No multiplayer logic baked in
  • Zero GC allocations in Update

Instead, MFPC gives you:

  • Clean state logic (by exposing variables)
  • Clear extension points
  • Optional systems via future modules