2022-09-08
6334
#unity
Marian Pekár
130548
Sep 8, 2022 ⋅ 22 min read

Building a third-person controller in Unity with the new input system

Marian Pekár I'm a programmer by heart and soul. Today, I'm fluent in C#, C++, and JavaScript, and I love making games. I work full-time as a programmer in Bohemia Interactive studio, in my spare time I write blog posts, occasionally create a game on a game jam, and constantly learn to be a better developer.

Recent posts:

Glowing 3D cube with the MediaPipe and React logos overlaid, symbolizing integration of AI and web development

How to build better AI apps in React with MediaPipe’s latest APIs

Learn how to integrate MediaPipe’s Tasks API into a React app for fast, in-browser object detection using your webcam.

Emmanuel John
Jul 17, 2025 ⋅ 10 min read
Vercel AI SDK logo on a 3D black grid background

How to build unified AI interfaces using the Vercel AI SDK

Integrating AI into modern frontend apps can be messy. This tutorial shows how the Vercel AI SDK simplifies it all, with streaming, multimodal input, and generative UI.

Ikeh Akinyemi
Jul 16, 2025 ⋅ 13 min read
how to prepare for a software engineering interview

How to prep for a software dev interview: Advice from a dev leader

Interviewing for a software engineering role? Hear from a senior dev leader on what he looks for in candidates, and how to prepare yourself.

Andrew Evans
Jul 16, 2025 ⋅ 12 min read
Next.js Real-Time Video Streaming: HLS.js And Alternatives

Next.js real-time video streaming: HLS.js and alternatives

Set up real-time video streaming in Next.js using HLS.js and alternatives, exploring integration, adaptive streaming, and token-based authentication.

Jude Miracle
Jul 15, 2025 ⋅ 19 min read
View all posts

9 Replies to "Building a third-person controller in Unity with the new input system"

  1. I have the problem that Unity doesn’t recognize the Controls.IPlayerActionsn / Controls.
    It is recognizing the normal UnityEngine.InputSystem and I made sure I included that package in VS Code. Any ideas? 😀

    1. Fixed the problem in case anyone runs into the same, here is the solution:
      check the generate c# class in the inspector 😉

  2. After implementing all the code and going trough the article multiple times, the movement works but it doesn’t play any animations.

  3. Hi Marian, thanks for the great tutorial, it seems to work nicely for me.
    I’m having an issue where moving sideways causes the camera to rotate a bit, i.e. if I walk left without manually moving the camera, it will turn enough that eventually the character will walk in a full circle.
    Do you have any ideas how I can fix this?

    Cheers,
    Elric

    1. Hey Elric,
      Did you figure out how to stop this? I can see what is happening with the camera but I cannot figure out how to fix it.
      Cheers,
      Brandon

      1. You need to go to the cinemachine camera and find the setting Orbits > Binding Mode and set it to World Space instead of Simple Follow with world up.

  4. I can’t find Cinemachine collider in my project. I’ve done all steps before it. Is it suppose to show up on Add Component?

  5. @Yujin, even though it says component above, it´s actually an extension. You´ll find it in a dropdown menu of the CinemachineFreeLook component at the very button.

  6. Character floats on play. The isGrounded check fails so it plays the Fall Animation (check in MoveState). Character is standing on a plane with a mesh collider! Any thoughts? thank you.

Leave a Reply