
Explore how shaders run on the graphics processing unit to modify per-pixel position, color, transparency, and light within the graphics pipeline’s vertex and fragment stages.
Create your first shader to turn the Godot logo into a circle, while learning fragment shaders, color and alpha, uv coordinates, and using distance and step nodes to define shapes.
Explore fragment colors in Godot shaders, converting floats to vector3 colors and using color constants and the time node to animate pixel colors.
Learn to use texture2D in Godot shaders, sampling textures with UV coordinates, create gradient and noise textures, and mix with original logo, while ensuring square textures for consistent results.
Explore vertex shaders in Godot by manipulating vertex positions to bend and rotate sprites, using Vector2 operations, UV versus vertex coordinates, and time-based sin for a Y-axis tilt.
Learn how variables work in Godot 2D shaders, including constants, parameters, and varyings, expose shader parameters in the inspector, and pass data from the vertex shader to the fragment shader.
Refine shader definitions by moving vertex position updates before fragment colors, and learn how vertex and fragment shaders manage vertices, fragments, UVs, and aspect ratio in Godot 2D.
Build a Godot 2D shield shader by blending a main circle with a noise texture, a movable highlight, and glow, using smooth gradients and color blending.
Create a Godot 2D outline shader by expanding visible pixels in eight directions to form a clean outline. Configure color, thickness, and max thickness with uniforms, and ensure texture padding.
Explore uv control in Godot shaders, scaling and centering uv coordinates, sampling textures, and building a pixelation and checkerboard shader using grid, floor, and mod.
Set up a pixelate shader in Godot using a fragment shader and a pixel size uniform, adjust texture size, and implement rounding with 0.5 for a clean, grid-based pixel effect.
Learn to create a dissolve effect for the Godot logo with a fragment shader using a noise texture and a progress parameter. Tween the gradient for a smooth reveal.
Create a 2d fire shader in Godot by shaping an ellipse, scrolling fire noise with moving uv, and composing outer, mid, and inner masks with main, mid, and inner colors.
Map red intensities to a 16-item color array in a 2d Godot shader, then use a dot-product with gray weights 0.299, 0.587, 0.114 to compute luminance and apply vibrance.
Develop randomness in a 2d Godot shader by building a float random function from uv, producing grainy color noise that animates with time and a grid of random colors.
Master 2d frame animation in Godot by shader, using UV-based frame selection, current frame, and modulus to loop, with setup tips for a UI texture rectangle 96x96 and top-left clipping.
Create a 2d Godot shader transition with a center circle cutout that reveals a color rectangle. Adjust for aspect ratio using ratio uv and dfby/dfdx, and animate with a tween.
Combine trigonometry with shaders to animate 2D vertices using sine and cosine waves, driven by time, and learn to normalize curves with a scale curve texture for dynamic effects.
Explore trigonometry basics and their role in two-dimensional shaders. Link angles to x and y coordinates using sine and cosine, illustrated with an orbital system.
Create a 2d Godot shader that renders an Earth and a Moon orbit using sine and cosine with centered uv coordinates, radius controls, and time-based animation.
Render a shine line in Godot shaders using slope-intercept math and a distance-to-line mask, with adjustable thickness, center, and animated movement.
Build a 2D reload shader in Godot that uses arc tangent to compute angles, handles quadrant logic, and animates via tweens when the user presses enter.
Explore a Godot 2d liquid shader using sine waves, time, and step functions to animate waves for a health-bar style liquid with main and background masks.
Learn world coordinates in Godot 2D shaders by manipulating vertex positions in the vertex shader, applying matrix math, and using sprite2d, mesh instance 2D, and polygon 2D textures with shaders.
Animate a Japanese flag on a Polygon2D by texturing with Icon.svg, removing border pixels via a fragment shader, and driving vertex motion with speed, frequency, and amplitude uniforms.
Explore how matrix math powers vertex shaders by using translation, scale, and rotation matrices to transform textures and move graphics in Godot shaders.
Explore fake 3d by combining rotation matrices for x, y, and z axes in a godot shader, applying the rotation matrices to sprite vertices and pivoting with translate, rotate, translate.
Explore world space lights by building a dungeon light shader in Godot, using world position, uniform light parameters, and a fragment shader to create light cutouts and multiple light sources.
Master a 2d grass shader in Godot by rotating grass blades toward the player using a center-point calculation, distance falloff, and a rotation matrix with a pivot.
Explore canvas coordinates and screen space to sample the screen texture, create a circular grayscale vignette around the player, and apply a configurable pixelation effect.
Build a magnifying shader in Godot 2D that zooms the background and adds blur using a shader material, screen_texture, screen_uv, center UV, and texture LOD.
Create a tv-style distortion shader in Godot that warps the screen with a center-based fisheye, adds scanlines and a vignette, and organizes uniforms for flexible control.
Learn Godot shaders to create a player reflection driven by a mask and backbuffer copy, using the screen texture and remote transform 2d, with blue tint.
Fix backbuffer copy conflicts in Godot 2D by moving the color rectangle; apply a per-tree shader to keep the player on top and have background and trees render correctly.
Combine multiple shaders with a subviewport to render several nodes into one texture, and explore inner and outer shader materials for dynamic, animated viewport effects.
Explore creating a 2D x-ray effect in Godot with subviewport textures and a shader, applying it to the player and a line layer with animated diagonal lines.
Master a 2D Godot light shader that runs per fragment and per light source, replacing default lighting, and configure textures, color, energy, and rotation for lighthouse-like effects.
Explore how to generate 2D shadows in Godot using shaders, light occluders, and the shadowModulate color, then experiment with a checkerboard pattern and HSV to RGB rainbow shadows.
Apply normals and shininess through normal maps and specular maps to sprites and tiles, and manipulate light behavior with a 2D point light and a shader.
Learn how to make your games beautiful by mastering 2D shaders! When getting started with game development shaders feel like black magic, most people understand some basic concepts but advanced concepts seem impossible to understand. This course will fix that and teach you everything you need to know about 2D shaders:
How shaders work on a basic level + GPU logic
We will go through basic projects that require little math
Trigonometry and Matrix math will be used to create advanced effects
We'll cover screen space and canvas space to expand the scope of our shaders
Finally, we cover light shaders
Every concept, including the math, will be explained in a lot of detail with a ton of practical examples. In total, this course covers the creation of 44 shaders and once you get through these projects you will have a strong foundation to use shaders in your own projects to make beautiful games. Most of these shaders are modular so you can apply them to your own projects with just a few tweaks for instant results.
The course also includes dedicated videos on math (trigonometry and matrices) that cover the basics if you're not familiar with them. The only requirement for this course is that you have a basic understanding of Godot.