← Projects/Tutorials/Godot 101
Game path · concept map · blueprint

Godot 101

What a game engine is, what Godot can do and how your own character from Blender walks in Godot 4. Eight boxes, like a building plan.

Beginner8 boxesGodot 4 · GDScriptfreeNew, not tested on devices

Version v0.001 · as of 03.11.2026 · responsible: Groot 01 for Mikey · facts from the official Godot and Blender docs, retrieved on 03.11.2026 (box 8).

0 / 8boxes done. Ticks are only saved in this browser.

Box 1: What is Godot

BlueprintFig. 1: What an engine gives you

The engine brings ready-made building blocks. You build the game on top.

Engineframework and toolbox
Building blocksgraphics, physics, sound, input …
Your rulesscripts for your game
Your gameruns

Like a kit: wheels, motor and steering are already there. You decide what kind of vehicle it becomes.

  1. 1.1Godot is an open-source game engine.
  2. 1.2A game engine is a software framework that serves as the foundation and toolbox for making video games.
  3. 1.3Instead of programming every basic part of a game from scratch, the engine already provides ready-made building blocks and systems for the technical work.
  4. 1.4Godot is lean and open source, and people like to use it for both 2D and 3D. Box 3 shows which building blocks Godot brings along.

Box 2: Engines compared

BlueprintFig. 2: Three well-known engines

All three can do 2D and 3D. They differ in language, cost and licence.

Unityversatile, C#
Unreal Enginephotorealistic, C++ and Blueprints
Godotlean, MIT licence
EngineIdeal forLanguageCost and licence (as of 03.11.2026)
UnityVery versatile, widely used for 2D, 3D and mobile games and by indie developers (e.g. Ori and the Will of the Wisps).C#Proprietary. “Unity Personal” is free for individuals and small organisations with less than USD 200,000 in revenue and funds raised in the last 12 months; above that, paid plans.
Unreal EngineKnown for photorealistic 3D graphics and high computing power, e.g. for AAA games or virtual production in film.C++ and Blueprints (visual, with nodes)Proprietary, source code available. Free to learn and develop; for games a 5% royalty on gross revenue per product above USD 1 million.
GodotLean and open source, for 2D and 3D. Ideal for 2D games, light 3D projects and less powerful PCs.GDScript (very similar to Python), C# (in the .NET version), C++Completely free and open source: MIT licence, commercial use without fees too (box 4).

Costs and licences can change. The details come from the makers’ official pages, retrieved on 03.11.2026 (box 8). Always read the current licence before you sell anything.

Box 3: Main parts

BlueprintFig. 3: How a Godot game is built

In the editor you build scenes out of nodes. Scripts give the nodes their rules.

Editorwhere you build
Scene of nodesa tree of building blocks
GDScriptrules for a node
Run the gametest in the editor

The main parts of a game engine

Graphics engine (rendering)Draws 2D and 3D graphics, lighting, shadows and visual effects (shaders).
Physics engineCalculates physical laws such as gravity, impacts and collisions between objects. In the mini project your character falls to the floor with get_gravity().
Audio engineControls sound effects, background music and spatial sound (3D audio).
Scripting and logicLets you program game rules, enemy behaviour and interactions. In Godot usually with GDScript.
Input/outputHandles input from keyboard, mouse, touchscreens or gamepads, plus vibration.
Resource management (asset management)Organises 3D models, textures and sounds, and saves game progress.
Development environment (editor)A user interface where you put the game world together, test it and adjust it.

What Godot adds

  1. 3.1Scenes and nodes: everything in Godot is a node (a building block, e.g. light, camera, character). Several nodes together form a scene. A scene can be placed inside another scene, like the character in the mini project.
  2. 3.2GDScript: Godot’s own language. It feels very familiar to anyone who knows JavaScript or Python. Godot officially supports GDScript, C# and C++.
  3. 3.3Editor: build scenes, write scripts and start the game with one click, all in the same program.

Note: there are also community extensions for JavaScript and TypeScript in Godot. They are not official, and this tutorial does not use them.

Box 4: Why Godot

BlueprintFig. 4: What the MIT licence means

Godot is free. Your game belongs to you.

MIT licencefree software
No feeseven when you sell
Your contentis yours

If you pass on a game, include Godot’s copyright notice, for example in the credits.

  1. 4.1MIT licence: Godot is free, open-source software under the MIT licence. You may use Godot for any purpose, commercially too, without fees or a share of revenue.
  2. 4.2Your game is yours: whatever you build with Godot, characters, images, sounds and code, stays your property.
  3. 4.3For beginners: if you are a complete programming beginner and love 2D games, start with Godot. Its own language GDScript is so intuitive that you see first results quickly. The official Godot docs also recommend GDScript to start with.
  4. 4.4Advantages at a glance: completely free, lightweight, easy to learn and open source.

Not legal advice: read the exact text at godotengine.org/license (box 8).

Box 5: Platforms

BlueprintFig. 5: Where you build, where your game runs

The editor exists for five platforms. You can export to even more.

EditorWindows, macOS, Linux, Android, Web
Exportyour game as an app
Game runsWindows, macOS, Linux, Android, iOS, Web

Editor (where you build)

Export (where your game runs)

As of: Godot 4.7.2 (released 18.08.2026), docs “List of features” and “Using the Web editor”, retrieved on 03.11.2026.

Box 6: Mini project

BlueprintFig. 6: Your character walks

figur.glb comes from Blender. In Godot it gets a body, keys and two animations.

figur.glbfrom Blender 101
Project folderGodot imports
welt.tscnfloor, light, camera, player
spieler.gdCharacterBody3D
WASD / arrowsidle and walk

Names must match exactly: actions “links”, “rechts”, “vor”, “zurueck”, node “Figur”, animations “idle” and “walk”.

  • Godot 4 (tested with 4.7.2)
  • figur.glb from Blender 101
  • keyboard

Tip: import .blend files directly

Godot has a very good Blender link. You can drag your .blend files straight into the project folder; Godot imports models, materials and animations automatically in the background. To do this, Godot calls Blender and converts the file to glTF.

Requirement: Blender must be installed on the same computer (Blender 3.0 or later, 3.5 or later recommended, ideally the official version from blender.org). If Godot cannot find Blender by itself, enter the path: Editor → Editor Settings → FileSystem → Import → Blender → Blender Path.

In this mini project you use figur.glb. That works without Blender on the Godot computer too. figur.blend stays your source.

Your character from Blender 101

This is how the character comes out of Blender 101. If any of this is off, it will lie crooked in Godot, be too big or walk backwards.

Step by step

  1. 6.1Create a project: start Godot 4, click Create in the Project Manager, enter a name, keep the “Forward+” renderer, create.
  2. 6.2Bring in the character: drag figur.glb into the project folder (the FileSystem dock, bottom left). Godot imports it straight away.
  3. 6.3Set the keys: Project → Project Settings → Input Map. Add four actions and give each two keys: links (left) = A and ←, rechts (right) = D and →, vor (forward) = W and ↑, zurueck (back) = S and ↓.
  4. 6.4Build the world: new scene with a Node3D called “Welt”. Below it: DirectionalLight3D (sun), Camera3D (position 0 / 4 / 6, rotated about -30° around X) and a StaticBody3D “Boden” (floor) with CollisionShape3D (BoxShape3D 20 × 1 × 20) and MeshInstance3D (BoxMesh 20 × 1 × 20), position Y = -0.5. Save as welt.tscn.
  5. 6.5Player: under “Welt” add a CharacterBody3D called “Spieler” (player). Below it a CollisionShape3D with a CapsuleShape3D (radius 0.3, height 1.8, position Y = 0.9). Then drag figur.glb onto “Spieler” and rename the new node to “Figur”.
  6. 6.6Script: select “Spieler”, Attach Script, name it spieler.gd and paste this code:
spieler.gd · Godot 4extends CharacterBody3D
## Player: walks with WASD or the arrow keys, plays idle and walk.

const TEMPO := 3.0       # metres per second
const DREH_TEMPO := 10.0 # how fast the character turns

@onready var figur: Node3D = $Figur
@onready var anim: AnimationPlayer = figur.find_child("AnimationPlayer", true, false)


func _ready() -> void:
	# glTF has no loop setting. We switch it on here.
	for anim_name in ["idle", "walk"]:
		if anim and anim.has_animation(anim_name):
			anim.get_animation(anim_name).loop_mode = Animation.LOOP_LINEAR
	spiele("idle")


func _physics_process(delta: float) -> void:
	# Gravity: only while the character is not standing on the floor.
	if not is_on_floor():
		velocity += get_gravity() * delta

	# Read the keys: left/right and forward/back, each from -1 to 1.
	var eingabe := Input.get_vector("links", "rechts", "vor", "zurueck")
	var richtung := Vector3(eingabe.x, 0.0, eingabe.y)

	if richtung != Vector3.ZERO:
		velocity.x = richtung.x * TEMPO
		velocity.z = richtung.z * TEMPO
		# The character faces where it walks. Its front is +Z (from Blender: -Y).
		var ziel := atan2(richtung.x, richtung.z)
		figur.rotation.y = lerp_angle(figur.rotation.y, ziel, DREH_TEMPO * delta)
		spiele("walk")
	else:
		velocity.x = move_toward(velocity.x, 0.0, TEMPO)
		velocity.z = move_toward(velocity.z, 0.0, TEMPO)
		spiele("idle")

	move_and_slide()


func spiele(anim_name: String) -> void:
	if anim and anim.has_animation(anim_name) and anim.current_animation != anim_name:
		anim.play(anim_name)
  1. 6.7Run: F5 (Run Project). The first time, Godot asks for the main scene: choose welt.tscn. With W A S D or the arrow keys the character walks, turns towards where it is going and plays walk. Let go and it stops and plays idle.

How the code works

Looping: where and how you set it in Godot

A glTF file (.glb) has no loop setting. After import, Godot therefore plays idle and walk only once. You set the loop in Godot, in one of two ways:

Way 1, in code (this is what the mini project does): in spieler.gd, _ready() sets loop_mode = Animation.LOOP_LINEAR for both animations. You do not need to do anything else.

Way 2, on import: in the FileSystem dock, double-click figur.glb. This opens Advanced Import Settings. On the left choose the animation idle, on the right under Settings set Loop Mode to Linear, do the same for walk, then Reimport. The setting is kept the next time you export from Blender.

If it does not work

Character does not move: are the actions called exactly links, rechts, vor, zurueck? Is the script attached to “Spieler”?

No animation: are the actions in Blender called exactly idle and walk (not e.g. walk.001)? The glTF export only takes actions that are active or stashed in an NLA track (Blender 101).

Character walks backwards: in Blender it is not facing -Y. Turn it in Blender and export again.

Checked and not checked

Checked (03.11.2026): the script ran in Godot 4.7.2 (Linux, without a screen) with the real figur.glb from Blender 101 (Blender 5.2.3, 7 bones), built step by step as above: import without errors, height 1.8 m, feet on the floor, front facing the direction of travel, falling onto the floor, WASD and arrow keys, diagonal not faster, switching idle/walk, looping. Way 2 for the loop was checked via the import file, not in the interface.

Not checked: in the Godot editor with a screen, on real devices and with real beginners. The menu names come from the English Godot interface; in other languages they may differ.

Next you could add jump: an action “springen” on Space, and when the character is on the floor, set velocity.y upwards. This is not worked out here yet and not checked.

Box 7: On to Blender 101

BlueprintFig. 7: Roadmap Blender → Godot

The most important thing is the pipeline: how the character and its animations land cleanly in the engine.

Modellingin Blender
Rigskeleton (armature)
Actionsidle, walk, jump
figur.glbglTF 2.0 export
Godot 4box 6
  1. 7.1Focus on the pipeline (Blender → engine): what matters is not just modelling itself, but how the animations land cleanly in the engine.
  2. 7.2Rig and actions: learn in Blender how to build a so-called rig (skeleton, called an “armature” in Blender) and how to organise animations as actions in the Dope Sheet’s Action Editor. Blender 101 shows you how.
  3. 7.3Install Godot 4 and import the character: as figur.glb as in box 6, or directly as .blend with the Blender import (tip in box 6).

On to Blender 101 →

Margin note: for 3D straight in the browser there are libraries such as Three.js or React Three Fiber. For more complex games outside the browser that use the PC’s full graphics power for your Blender assets, a classic engine like Godot is the right place. That is what this is about.

Box 8: Sources

BlueprintFig. 8: Where the facts come from

Only the makers’ official pages, all retrieved on 03.11.2026.

Godot docsdocs.godotengine.org
Blender manualdocs.blender.org
LicencesGodot, Unity, Unreal
  1. Godot: License (MIT, commercial use without fees, copyright notice)
  2. Godot: download, version 4.7.2 of 18.08.2026, also .NET version with C#
  3. Godot docs: List of features, Platforms section (editor and export)
  4. Godot docs: Using the Web editor (early stage, limitations)
  5. Godot docs: Using the Android editor
  6. Godot docs: FAQ (languages GDScript, C#, C++; GDScript for beginners)
  7. Godot docs: Available 3D formats (.blend import, Blender 3.0 or later, Blender Path)
  8. Godot docs: Model export considerations (front +Z, -Y in Blender)
  9. Godot docs: Import configuration (Import dock, Advanced Import Settings by double-click)
  10. Godot docs: CharacterBody3D (move_and_slide)
  11. Blender manual: glTF 2.0 (exporting actions and NLA tracks)
  12. Blender manual: Action Editor
  13. Blender manual: Armatures (skeleton)
  14. Unity: Unity Personal (USD 200,000 limit)
  15. Unity manual: programming with C#
  16. Unreal Engine: License (5% above USD 1 million per product)
  17. Unreal docs: Programming and Scripting (C++ and Blueprints)

The Unreal Engine pages could not be opened directly on 03.11.2026; the details come from the search excerpt of the official pages and should be checked again at the next update.

Based on: text by Mikey (03.11.2026), arranged into these eight boxes. © Michaelangelo Zünd · Knowledge is free, finished work costs.