Godot 3D Games


After working on 2D games in godot for a few months, I decided to try a shot at making 3D games! Below are the results of my goofing around in Godot 4 and making games. It's a really satisfying activity! The main thing I wanted to point out is that while I used only assets I myself made for my 2D games (sounds, art, models, etc.), for my 3D games, I used free online assets for some of the assets I didn't feel like creating. Of course, appropriate credit for each asset is given in each project's associated README file. Anyway, try them out, and/or check out the code, below!

Wave Survival Game 3D

This is a follow up to my "Wave Survival Game" I made in 2D. I loved playing Call of Duty: Zombies as a kid, and I wanted to make my own version of it! This was my first game in 3D, so it's certainly not bug-free or anything like that, but I had a blast making it and I learned a ton! Check out the code here or play below by downloading it on itch. Lastly, I wanted to note that this is just a proof of concept project for a game like this. It is by no means complete, balanced, etc., as I just wanted to make a prototype game so I knew I could and so I could expand on it in the future if I wanted. In line with this, I'd like to note a few things I'd love to add to this in the future were I to continue work on it.

  • Things I could add
    • More weapons
    • New enemies that act differently (different models, speeds, damage, etc.)
    • Drops (nuke, extra money, etc.)
    • Ammo system
    • Performance improvements

3rd Person 3D Platformer

A bit ago, a spin-off of one of my favorite games, Celeste, was released called Celeste 64. Playing it, I thought it wouldn't be too bad to try and implement a similar character controller myself. Therefore, in an attempt to get more comfortable with 3D Godot 4, I wanted to try creating a player controller with all the features one would expect in a 3D platformer. I wanted to essentially make a template 3D character controller that one could build a game around. This really helped me learn concepts of game design in 3D Godot 4. While I know it's not the most visually impressive game, I learned a ton by implementing each of the included features (listed below) one by one. This is a proof-of-concept, as with this character controller, I could easily add many levels that utilize the different movement mechanics. I was satisfied with just creating this template for now, however. Check out the code here or play below by downloading it on itch. As I do with most of my projects, I'd like to note a few things I could add if I choose to expand on the player controller. Additionally, I'll list the features implemented.

  • Things I could add
    • Make it so you can go around 90 degree turns while climbing
  • Features implemented in this game/character controller
    • Jumping (including custom jump function, jump buffering, variable jump height, and coyote time)
    • Dashing (with ghost fade effect)
    • Wall jumping
    • Wall climb (changing such that direction is relative to player when wall climbing)
    • Third person, with player-turning direction-agnostic camera
    • Smooth player turning
    • Custom skybox
    • More

Created: 01/02/2024
Last Updated: 02/15/2024