Recent snippets Explore
2D Maze Generator
Casual Garage Coder
Generates data for a simple 2D Maze made of squares.
Easy Font Size Scaler
greenpixels
An autoload script that adds an easy adds dynamic scaling to all text in your project
Screenshot without freezing (more complex solution)
darkcanopy
An even more complex screenshot function that avoids the pipeline stall of get_texture.get_image()
Monitor Layout UI
Casual Garage Coder
Users can have multiple monitors. Here is a custom UI node to display their layout.
Taking a screenshot without freezing (simpler)
darkcanopy
A screenshot function done on a separate thread so your game can save screenshots without lag
Small Terrain Generator
Casual Garage Coder
A script to generate terrain data, a shader to render it.
Easy Signal Disconnects
Dragon1Freak
Util function to disconnect all callables on a signal, or safely disconnect a callable from a signal
Twin Sticks Third Person Controller and Camera
Casual Garage Coder
Short (but versatile) script to control player movement and orbiting camera
Stick Visualizer
Casual Garage Coder
A control node that displays a stick status/values
TileData color batch edit
jil-hue
Tool for quickly replacing colors in a monochrome TileSet
Recent shaders Explore
spatial
Texture-based rim lighting
darkcanopy
Rim lighting that has a texture for an object but also rim lighting to 'highlight' it.
Cubic Bezier Curve Mesh Deformation
Casual Garage Coder
Specialized shader that deforms a mesh based on a cubic Bézier curve.
Color by Instance
Casual Garage Coder
Simple colorization by instance identifier
Greyscale Shader WITH modulate
Saltlight Studio
This is a somewhat simple shader for greyscaling sprites, except with modulate and self-modulate still working
spatial
Procedural Slash
Ali
A shader effect for procedurally creating sword slashes and the like.
spatial
3D Anime flame
Casual Garage Coder
A shader that creates a magical anime fire effect
Canvas item
Palette swap
Pixel
A shader that swaps colors
Canvas item
Simple quantization
Pixel
Reduces the range of possible colours a pixel can take
Recent articles Explore
Smoothing with expDecay instead of lerp()
darkcanopy
Many developers use lerp() in a way that is not frame rate independent. Learn how to use expDecay as an alternative.
Basic state machine
PapaPandaGames
This article shows you how to implement a basic state machine in GDScript.
A glance at Compute Shaders
Casual Garage Coder
Compute shader is a great way to use all the advantage of GPU, but one need to harness that power.
Stochastic L-System Resource
Casual Garage Coder
Procedural generation could make a good use of L-System. Let's dive into it.
Publish your game on Linux with Flathub
Casual Garage Coder
Flathub is a great publication platform for Linux applications. Here is an introduction to how you can publish your game using Flathub.
Set a project-wide custom theme
Bee
Save yourself the trouble of having dozens of manually specified themes and LabelSettings resources scattered across your project.
