Unity Playmaker - 3rd Person Controller and New Input System

4 min read 11 days ago
Published on Aug 25, 2025 This response is partially generated with the help of AI. It may contain inaccuracies.

Table of Contents

Introduction

In this tutorial, you will learn how to create a 3rd person player controller in Unity using Playmaker and the new Unity input system. This guide will cover setting up player movement, camera controls with Cinemachine, and support for both keyboard/mouse and gamepad inputs. By following these steps, you'll be able to implement a basic 3rd person movement system in your Unity projects.

Step 1: Download and Setup New Input System

  • Visit the Unity Asset Store and download the new Input System package.
  • Open your Unity project and go to Window > Package Manager.
  • Search for the Input System and install it.

Step 2: Create New Input Actions Map

  • In the Unity Project window, right-click in your Assets folder and create a new Input Actions asset.
  • Open the Input Actions asset and create a new action map for your player controls.
  • Define actions such as Move and Look that will be used for player movement and camera control.

Step 3: Set Up Binding for Arrow Keys

  • Select the Move action in the action map.
  • Add a binding for the Arrow keys by clicking on the "+" icon and selecting the appropriate key options.

Step 4: Set Up Binding for WASD

  • While still in the Move action, add bindings for the WASD keys.
  • Ensure each key is mapped correctly to the movement directions (W for forward, A for left, etc.).

Step 5: Set Up Gamepad Controller Left Stick

  • Select the Move action again and add a binding for the Left Stick of a gamepad.
  • This allows players to control movement using a game controller.

Step 6: Set Up the Player

  • Create a new GameObject in your scene and name it "Player."
  • Attach a Rigidbody component to the Player GameObject.
  • Set the Rigidbody's constraints to freeze rotation on the X and Z axes to prevent unwanted tilting.

Step 7: Add Player Character Controller

  • Add a Character Controller component to the Player GameObject.
  • Adjust the properties (such as radius and height) according to your character model's dimensions.

Step 8: Add Cinemachine and Free Look Virtual Camera

  • Install the Cinemachine package via the Package Manager.
  • Create a new Cinemachine Free Look Camera in your scene.
  • Position the camera to focus on the Player GameObject and adjust the settings for a smooth following camera.

Step 9: Fix Camera Clipping Through the Terrain

  • Ensure that the camera's settings prevent it from clipping through terrain.
  • Adjust the collision settings in the Cinemachine camera component to account for obstacles.

Step 10: Add Playmaker FSM and Actions for Player Movement

  • Open Playmaker and create a new FSM for the Player GameObject.
  • Use actions to read input from the new Input System and translate that into movement.
  • Example actions include:
    • Get Axis (for movement)
    • Move Character (using the Character Controller component)

Step 11: Set Up Smooth Look at Direction

  • Add an action in Playmaker to make the character smoothly look in the direction of movement.
  • Use the "Smooth Look At" action to rotate the character towards the movement input direction.

Step 12: Final Test and Conclusion

  • Playtest your scene to ensure that the player can move using both keyboard/mouse and gamepad inputs.
  • Ensure the camera follows smoothly and behaves as expected.

Conclusion

You have successfully set up a basic 3rd person controller in Unity using Playmaker and the new Input System. Your player can now move using both keyboard and gamepad inputs, and the camera follows the player smoothly. As a next step, consider exploring player animations to enhance the movement experience.