Book Image

Godot Engine Game Development Projects

By : Chris Bradfield
4 (1)
Book Image

Godot Engine Game Development Projects

4 (1)
By: Chris Bradfield

Overview of this book

Godot Engine Game Development Projects is an introduction to the Godot game engine and its new 3.0 version. Godot 3.0 brings a large number of new features and capabilities that make it a strong alternative to expensive commercial game engines. For beginners, Godot offers a friendly way to learn game development techniques, while for experienced developers it is a powerful, customizable tool that can bring your visions to life. This book consists of five projects that will help developers achieve a sound understanding of the engine when it comes to building games. Game development is complex and involves a wide spectrum of knowledge and skills. This book can help you build on your foundation level skills by showing you how to create a number of small-scale game projects. Along the way, you will learn how Godot works and discover important game development techniques that you can apply to your projects. Using a straightforward, step-by-step approach and practical examples, the book will take you from the absolute basics through to sophisticated game physics, animations, and other techniques. Upon completing the final project, you will have a strong foundation for future success with Godot 3.0.
Table of Contents (9 chapters)


In this section, you'll create the scripts needed to make everything work together. The flow of the game will be as follows:

  1. Place the ball at the start (Tee)
  2. Angle mode: Aim the ball
  3. Power mode: Set the hit power
  4. Launch the ball
  5. Repeat from step 2 until the ball is in the hole


Add the following script to the UI to update the UI elements:

extends CanvasLayer

var bar_red = preload("res://assets/bar_red.png")
var bar_green = preload("res://assets/bar_green.png")
var bar_yellow = preload("res://assets/bar_yellow.png")

func update_shots(value):
$Margin/Container/Shots.text = 'Shots: %s' % value

func update_powerbar(value):
$Margin/Container/PowerBar.texture_progress =...