Book Image

Godot 4 Game Development Projects - Second Edition

By : Chris Bradfield
5 (1)
Book Image

Godot 4 Game Development Projects - Second Edition

5 (1)
By: Chris Bradfield

Overview of this book

Godot 4.0 is one of the most sought-after open-source game engines, and if you’re enthusiastic about exploring its features, then this book is for you. Written by an author with over twenty-five years of experience, the Godot 4 Game Development Projects introduces the Godot game engine and its feature-rich 4.0 version. With an array of new capabilities, Godot 4.0 is a strong alternative to expensive commercial game engines. If you’re a beginner, this book will help you learn game development techniques, while experienced developers will understand how to use this powerful and customizable tool to bring their creative visions to life. This updated edition consists of five projects with an emphasis on the 3D capabilities of the engine that will help you build on your foundation-level skills through small-scale game projects. Along the way, you’ll gain insights into Godot’s inner workings and discover game development techniques that you can apply to your projects. Using a step-by-step approach and practical examples, this book covers everything from the absolute basics to sophisticated game physics, animations, and much more. By the time you complete the final project, you’ll have a strong foundation for future success with Godot 4.0 and you’ll be well on your way to developing a variety of games.
Table of Contents (10 chapters)

Adding the rocks

The goal of the game is to destroy the floating space rocks, so now that you can shoot, it’s time to add them. Like the ship, the rocks will use RigidBody2D, which will make them travel in a straight line at a steady speed unless disturbed. They’ll also bounce off each other in a realistic fashion. To make things more interesting, rocks will start out large and, when you shoot them, break into multiple smaller rocks.

Scene setup

Start a new scene with a RigidBody2D node named Rock, and add a Sprite2D child using the res://assets/rock.png texture. Add a CollisionShape2D, but don’t set its shape yet. Because you’ll be spawning different-sized rocks, the collision shape will need to be set in code and adjusted to the correct size.

You don’t want the rocks coasting to a stop, so they need to ignore the default linear and angular damping. Set both Linear/Damp and Angular/Damp to 0 and Damp Mode for both to Replace. The rocks also...