MFPC is a modular, production-ready first person controller, built for flexibility, clean integration, and Cinemachine workflows — without forcing animation systems, UI, or rigid architecture.MFPC supports Built-in, URP, and HDRP render pipelines.The controller logic is fully render-pipeline agnostic.Required packageCinemachineOptional packageInput System, only if you want to use the New Input System controllerIf you are using the Legacy Input System only, you can remove the New Input System scripts/folder. See the documentation for setup details and compatibility notes.MFPC – Modular First Person ControllerMFPC is a clean, modular, production-ready first person controller for developers who want full control — not a rigid framework.Built for FPS, immersive sims, and narrative experiences, it provides a solid movement foundation while staying completely flexible: no forced animation systems, no UI dependencies, and no opinionated architecture.Controller-first, not demo-first.Take a look at the WebGL demo, documentation, roadmap, youtube tutorials and join the discord server!Movement & Player StateWalk, Sprint, Crouch, Jump, Aim, LeanHold or Toggle modes (configurable)Forward-only sprint restrictionCollision-safe auto-uncrouchOptional auto-unsprint when stopping movement (toggle mode)Optional advanced slope handlingOptional steep slope slidingPhysics interactions with environment.Movement is predictable, tweakable, and free from hidden behavior.Input SystemsLegacy Input System controllerNew Input System controllerMouse + keyboard supportGamepad support (tested with multiple controllers)Sensitivity parity between input systemsFrame-rate independent mouse smoothing (New Input System)No need to rewrite gameplay logic when changing input workflows.Camera System (Cinemachine-based)MFPC is built around Cinemachine, not custom camera math.Virtual Camera setup for: idle, walk, sprint, crouch, aimFOV kick on sprint (via Virtual Camera swap)Headbob via Cinemachine Noise (no custom scripts)Custom camera blends for smooth transitionsLean-based camera roll (Dutch)Camera tilt feedback on slopesSeparate aim camera variantsClean integration with camera stacksOptional module:Disable headbob/noise globally (no need to edit cameras manually)All camera behavior is visual and editable — no black-box scripts.Animation & Events (Optional Modules)MFPC does not require an Animator — but integrates seamlessly with one.AnimatorBridge:Syncs Animator parameters from controller state and velocitySupports movement speed, grounded, crouch, sprint, aimIncludes jump/fall detection and vertical velocityWorks with both input system controllersOptional auto-detection and LateUpdate syncingPerfect for driving blend trees and layered animation setups without modifying the controller.EventObserver:UnityEvent-based state transitions — Jump (leave ground), Land, Sprint / Crouch / Aim / Move / LeanInspector-friendly — no custom scripting requiredIdeal for audio, VFX, UI, or gameplay hooksThese modules keep MFPC lightweight while enabling full production integration. Included Animation Starter SetupMFPC includes a lightweight first-person animation starter setup to help you quickly prototype:Clean first-person arms model (.fbx)Humanoid rig compatibleBasic locomotion animations includedReady to use with AnimatorBridgeThis setup is fully optional and can be replaced with your own assets without affecting the controller.Optional Stamina SystemSprint drain and regenerationJump stamina costExhaustion and recovery behaviorFully optional — no UI or HUD requiredIncludes a demo stamina UI example, which can be completely removed without affecting MFPC.Audio SystemSurface-based footsteps and landing soundsTerrain and object supportWater surface handlingAudio pooling (no runtime instantiation spikes)Easy to extend with ScriptableObjectsNo hardcoded layers. No forced setup.Architecture & Design PhilosophyMFPC is intentionally not an all-in-one solution.No forced Animator ControllerNo stamina system assumptionsNo UI or HUD dependenciesNo required layers or tagsNo multiplayer logic baked inZero GC allocations in UpdateInstead, MFPC gives you:Clean state logic (by exposing variables)Clear extension pointsOptional systems via future modulesBuild exactly what you need — nothing more.Unity Versions:Unity 2021.3 LTS and newer (recommended)Unity 6.0+Render Pipelines:Built-inURPHDRPDependencies:Cinemachine (Unity package)New Input System (only for New Input System controller)Platforms Tested:PC (mouse & keyboard)Gamepad controllers (Nintendo and Xbox controllers)Code Quality:Well-commentedInspector-friendlyModular and readableNo runtime allocations in Update (GC-free during gameplay)Package Size• Full package (with demo content and example arms): ~110 MB• Core controller only (no demo assets): ~6.5 MB• Optional animated arms (.fbx with 2k albedo and normal textures): ~16MBDemo assets (such as textures, scene, materials, models, etc.) are fully optional and can be removed without affecting functionality.





