Technical notes for Godot game engine
Define custom node types with class_name, improve editor usability with @icon and @export, and extend the inspector with custom Resources and EditorInspectorPlugin.
Learn how to implement automated tests using the Godot Unit Test (GUT) addon. Covers writing tests, assertions, signal testing, and scene testing.
Learn how to extend the Godot editor using the @tool annotation and EditorPlugin class to add custom docks, toolbar buttons, and inspector plugins. Covers plugin.cfg setup to best practices.
Learn how to set up VSCode or Cursor as an external editor in Godot, improving your development workflow with AI completion, advanced debugging, and LSP integration.
Learn the fundamental concepts of 'Scenes' and 'Nodes' that form the core of Godot Engine, explained at a practical level. Includes performance tips and best practices.
Learn Godot Engine's pause functionality and Node Process Mode. From basic usage to creating non-paused UIs, cutscene and dialogue applications, and performance considerations.
Learn how to strategically use Godot Engine's debugging tools and print_debug function to efficiently fix bugs, aimed at beginners to intermediate developers.
Master GDScript's static typing to prevent bugs proactively and maximize performance. Learn practical techniques with code examples.
How to implement three commonly used design patterns in Godot: Composition, Decorator, and Factory. Practical GDScript examples for building flexible, reusable, and extensible designs without relying on deep inheritance.
A comprehensive guide to Godot Engine's Autoload (Singleton) feature, from basic usage to common mistakes, best practices, and comparisons with alternative patterns.
Learn how to organize complex character behavior, from simple state machines using enum and match statements to advanced design patterns with state classes.
Learn Godot's signal feature from basics to practical applications and best practices, enabling loosely coupled component design while avoiding direct references.
Learn how to use the await keyword and coroutines in Godot 4's GDScript, from basic signal waiting to practical UI control and performance considerations. Includes migration guide from Godot 3's yield.
Explains the difference between _process and _physics_process. Fundamentals of variable/fixed timesteps and best practices for proper usage.
Design patterns to prevent memory leaks from cyclic references. Learn how to use WeakRef, signals, and Autoload.
Learn Godot Engine's InputMap feature. From basic usage to dynamic key configuration, saving settings, and best practices for building a flexible input system.
Learn the differences between Godot Engine's input methods is_action_just_pressed, is_action_pressed, and is_action_just_released. Includes practical code examples for jumping, movement, charge attacks, and variable-height jumps.
Learn the differences between CharacterBody2D's Grounded and Floating modes. Discover optimal usage for top-down vs side-scrolling games, with code examples, common mistakes, and best practices.
Learn how Godot Engine's Collision Layers and Masks work. Covers efficient setup methods, dynamic code control, and performance optimization.
Learn the differences between move_and_slide used with CharacterBody and the versatile move_toward function in Godot Engine. Includes practical code examples for knockback, enemy tracking, and UI animation.
Learn the fundamentals of range detection and trigger implementation using Godot Engine's Area2D node, from practical implementations like enemy detection ranges and continuous damage zones to performance optimization.
Learn the features, characteristics, performance, and practical use cases of Godot Engine's main 2D physics bodies—CharacterBody2D, RigidBody2D, and StaticBody2D—with code examples.
Learn how to play 3D character animations with AnimationPlayer, manage states and blending with AnimationTree, and adjust poses dynamically with SkeletonIK3D in Godot 4.
A comprehensive guide to Godot Engine's 2D animation systems, comparing AnimatedSprite2D and AnimationPlayer features, with practical code examples and integration techniques.
Learn how to implement a white flash effect when characters take damage in Godot Engine using the modulate property and Tween. Includes performance considerations and advanced examples.
Master the advanced features of Godot Engine's AnimationPlayer—tracks, keyframes, and callbacks—to synchronize complex animations with game logic.
Learn how to easily implement time-based value changes for UI effects, visual effects, and moving platforms using create_tween(), with practical code examples.
Learn how to efficiently manage complex character animations using Godot Engine's AnimationTree and state machines, with practical code examples.
Learn how to build responsive UI that adapts to various screen sizes using Godot Engine's Control nodes and layout containers.
Learn how to build an extensible dialogue system in Godot Engine featuring text display, typewriter effects, choices, branching, and data-driven design.
Learn how to design an extensible and maintainable inventory system in Godot Engine using Resources and signals, with clear separation of data, logic, and UI.
Learn Godot Engine's Theme system. From basic concepts to StyleBox, dynamic changes, and best practices—dramatically improve UI design consistency and maintainability.
Practical techniques for mastering Godot Engine's Camera2D. Covers smooth follow, screen shake, dynamic zoom, and performance optimization with concrete code examples.
From the basic role of Fragment Shaders in Godot Engine to dynamic effects using UV coordinates, time, and noise, with concrete code examples and performance optimization techniques.
Learn the essential concepts of Node3D and MeshInstance3D for starting 3D game development in Godot Engine, including 3D coordinate systems, Transform3D, and parent-child relationships with practical code examples.
Learn how to implement visual effects like explosions, smoke, and magic using Godot Engine's GPUParticles2D, from basic setup to performance optimization.
Learn SubViewport in Godot Engine. Covers practical techniques from minimap and 2D/3D hybrid UI implementation to dynamic render textures and performance optimization.
Learn how to implement 2D lighting and shadows using PointLight2D and LightOccluder2D. From basic setup to common problem solutions and performance optimization.
Implement 3D spatial audio using AudioStreamPlayer3D and AudioListener3D. Covers attenuation models, Doppler effect, and area-based reverb zones.
Learn how to implement a dynamic music system that responds to gameplay using AudioStreamInteractive and AudioStreamSynchronized.
Apply reverb, compressor, EQ, chorus, and other effects to AudioBuses to craft immersive audio environments for your game.
Learn how to use AudioStreamPlayer and Audio Bus. Best practices for BGM/SFX management and volume control.
How to implement flexible AI design using behavior trees (BT) in Godot. From node type explanations to a practical enemy AI example, learn how to build reusable AI structures.
Build a stealth-game FOV (field of view) system using Area3D for detection range, dot product for angle checks, and RayCast3D for line-of-sight verification. Covers multi-raycast precision and graduated alert levels.
Learn how to implement enemy AI pursuit and patrol behavior while avoiding obstacles using Godot Engine's NavigationAgent2D, with practical code examples and performance optimization tips.
Learn how NavigationRegion2D and navigation meshes work in Godot Engine, and how to build systems where AI smoothly navigates around obstacles—from bake settings to RVO avoidance.
Learn how to use Godot's TranslationServer for localization. Covers creating CSV translation files, dynamic language switching, and using placeholders.
Learn how to configure Godot 4's Terrains (auto-tile) feature, from setup to common mistakes, performance optimization, and GDScript integration.
Practical methods for data-driven design using Godot Engine's custom resources. Covers performance optimization, common mistakes, and best practices.
Compare the three main methods for persisting game data in Godot Engine (JSON, ConfigFile, Custom Resources) from error handling, performance, and security perspectives with concrete implementation examples.
Learn how to efficiently create and manage large numbers of NPCs and enemy character variations in Godot. Covers scene inheritance vs Editable Children usage with code examples and performance considerations.
Learn how to use Marker2D for GameManagers, spawn points, and weapon muzzle management. Covers differences from Position2D, performance considerations, common mistakes, and best practices.
Godot's group feature is a system for tagging and flexibly managing nodes. Learn basic usage through practical performance-conscious applications, and comparison with alternative approaches.
Learn how to choose between load() and preload(), implement background loading with ResourceLoader, build loading screens, and apply memory management best practices.
Learn the fundamentals of frame rate management to stabilize FPS, along with optimization techniques like physics interpolation and Object Pooling.
Learn the mechanism and implementation of Object Pooling. Eliminate instantiation spikes and stabilize FPS.
Complete guide to reliably export Godot projects to Windows/macOS/Android/Web. Covers build size optimization, common error solutions, and best practices.