Miscellany

First 3D Platformer Game in Godot

Personal project

Intro.

I've been using Unity since 2016, so I'm feeling very confident with it. But after a few controversial news about pricing and all community comments I've read about Unity, I decided to learn another game engine. One of the creators I follow in twitter, Kenney, is developing some starter kits to learn how to develop games with Godot.

Materials and tools in the project

  • Kenney Platformer Kit: Link
  • Kenney Starter Kit: Link
  • Video tutorial to make your own Mixamo animation libraries: Link
  • Characters from Synty Store: Link

Development journey

I began my game development journey by experimenting with Kenney's starter kit. It was my first encounter with this game engine. Additionally, I watched a video that provides guidance on transitioning from Unity to Godot, and you can find the link to the video here.

First, I focused on creating my own character. Given that I already possessed a substantial collection of 3D assets from Synty and had previous experience using Mixamo for animations, it seemed logical to begin with these resources. However, I've only utilized Mixamo in conjunction with Unity, and I'm unsure about the process of assigning animations to a model in Godot or whether Godot offers a feature similar to Unity's animation window. I felt quite disoriented at this stage, and it's only the beginning of my journey! Fortunately, I came across a YouTube video that addressed this specific issue, and I felt a sense of relief.

With a character featuring animations in place, the next step was to program the standard behaviors expected in a platformer game. This entailed enabling the character to jump, walk, and run, while also ensuring the camera followed the player, with the ability to rotate and move as needed. To begin with, let's configure the input system. This step was relatively straightforward, as it closely resembled the new Unity input system (even though it's a bit odd that we still refer to it as the "new input system"). Coding the behavior turned out to be quite straightforward: I used Kenney's code as a reference, carefully studying and understanding it. After grasping the concepts, I replicated the code in my own project, successfully implementing the basic behavior. However, I encountered a hurdle: I lacked any ground or platforms to test the functionality. This led to another challenge: figuring out how to create platforms or meshes with colliders in the game. The first part of this video helped me to figure it out.

More information

This project is not finished yet and it will be updated meanwhile I am developing it.

Back to projects To main page
Contact

I'd Love To Hear From You.

You can contact me by Twitter, LinkedIn or email.