Documentation / Setup

Quick Start

Get a first-person full-body character running with Easy FP Full Body Controller: the 7-step Setup Wizard, FPCutter, and input setup.

7 stepsURPUnity 6.5+
Easy FP Full Body Controller setup wizard in Unity
Setup WizardFirst import
00 / Before you begin

Requirements

A URP project on Unity 6.5 (6000.5.0f1)+, and a character model imported as Humanoid. See Overview for the full dependency list.

01 / Import

1. Import the asset

Import Easy FP Full Body Controller from the Asset Store into your URP project. The asset lives under Assets/FBSystem/.

02 / Rig

2. Prepare a Humanoid model

Select your character FBX → Inspector ▸ Rig ▸ Animation Type: Humanoid → Apply. The Setup Wizard requires a Humanoid rig for IK and animation to work.

03 / Guided setup

3. Run the 7-step Setup Wizard

Menu: Tools ▸ First Person ▸ Setup Wizard. Navigate with Next > / < Back / Finish Setup. The wizard only lets you advance once the current step's requirements are met.

Step 1: Select Player Root

Step 1: Select Player Root
Step 1 / Select Player Root

The Root is the primary container for your character's logic and movement — everything else lives inside it. Either drag an existing empty GameObject into the Player Root field, or click Create New Player Root to let the wizard generate one.

Step 2: Assign Model

Step 2: Assign Model
Step 2 / Assign Model

Assign the Model Animator (the Animator on your Humanoid character from step 2 above). The model MUST be set to Humanoid in its FBX import settings for IK and animations to work correctly — otherwise you get the "No Animator found" warning and cannot proceed. Global Dependencies (FBInputActions, PlayerSettings) are resolved automatically; both show a green checkmark once assigned.

Step 3: Find Bones

Step 3: Find Bones
Step 3 / Find Bones

The wizard needs three key bones for the camera and IK systems:

  • Head (Viewpoint Focus) — required; a red error icon appears until assigned.
  • Spine (Body Balance) — auto-detected; warning icon until filled.
  • Right Hand (Item Socket) — auto-detected; warning icon until filled.

Auto-detection works for most standard humanoid rigs: click Auto-Detect Bones and override any field manually if your rig is non-standard.

Step 4: Add Player Scripts

Step 4: Add Player Scripts
Step 4 / Add Player Scripts

Adds the scripts that handle movement, animation, and logic. Use Add All Required Scripts to add them in one go, or add individually:

ScriptPurpose
Main Logic Hub (PlayerController)entry point / logic hub
Movement (CharacterController)CharacterController-based locomotion
Locomotion (PlayerLocomotion)movement state handling
Camera Control (PlayerCameraController)first-person camera, look, eye offset
Animation Bridge (PlayerAnimatorController)feeds the Animator

Step 5: Setup Helper Objects

Step 5: Setup Helper Objects
Step 5 / Setup Helper Objects

Creates the internal hierarchy: the Camera Target (viewport focus) and sockets for holding items, plus two IK hints for the elbows. Click Create Missing Hierarchy Objects (or each row's Create button) to generate:

  • Camera Target (Viewport focus)
  • Right Elbow Hint (IK helper)
  • Left Elbow Hint (IK helper)
  • Item Container (Socket for tools)

Step 6: Connect Everything

Step 6: Connect Everything
Step 6 / Connect Everything

This final wiring step links all systems together. Click Connect All Systems — the wizard automatically finds and connects every reference between the components you set up in steps 1–5.

Step 7: Validation

The wizard runs a final health check over the whole setup. Everything green → Finish Setup.

04 / First-person mesh

4. Cut the mesh with FPCutter

So the character's head (and any other parts) hide in first person without vanishing from shadows:

  1. Run the FPCutter Wizard (menu Tools ▸ FPCutter Wizard) on your character's SkinnedMeshRenderer to segment it into body parts.
  2. The generated FPCutterController hides the parts listed in Hide In First Person (default: Head).
  3. Toggle at runtime via SetFirstPerson() or SetThirdPerson(), or the component's context menu (View ▸ Set First Person).
05 / Input System

5. Wire input

The asset ships FBInputActions (a Unity Input System asset) with a Player action map. PlayerInputHandler references it (actionMapName = "Player"). The Player actions:

ActionUsed by
Move, LookPlayerInputHandler → locomotion & camera
Sprint, Jump, CrouchPlayerInputHandler → locomotion
Flashlighttriggers the current item's Use (HandItemSocket.UseCurrentItem())
Previous, NextItemSwitcher (number keys / scroll wheel)
Attack, Interactdefined in the action map; consumed by the demo scripts

Assign the FBInputActions asset to the PlayerInputHandler if the wizard didn't.

06 / Validate

6. Press Play

Enter Play mode. You should see a full body in first person with working locomotion, look, and the held item. Verify events with the demo PlayerEventLogger (it logs every transition to the Console).

Watch / Walkthrough

Video walkthrough

Fix / Common issues

Troubleshooting

SymptomFix
IK / animation brokenModel must be Humanoid (Rig ▸ Animation Type). Re-run the wizard's Assign Model step.
Pink materialsProject must be URP. Convert/reimport materials to URP shaders.
Camera clips into the headAdjust eyeOffset or crouchEyeOffset on PlayerCameraController, and ensure FPCutter hides the head.
Item won't equipHandItemSocket must be assigned; the item needs an ItemHoldData component.
Look feels offTune lookSensitivity or verticalLookLimit (or the same fields on the PlayerSettings asset).

Ready to start with the shipped controller?

View on Asset Store ↗
Back to top ↑