Shaders: Getting Started

Shaders let you control how pixels are drawn on screen, and they are one of the most direct ways to give your game a visual style that stands out.

This free tutorial series, made in collaboration with Godot engine developer Baastian Olij, takes you from the basics of shader programming in Godot all the way to practical effects like animated 2D water, UV-based deformation, and 3D waves.

Intro to Shader Programming

Animated Water and UV Coordinates

Learn to manipulate UV coordinates in a shader and to animate water waves with sine and cosine!

Texture-based Deformation

Learn to manipulate UV coordinates in a shader and to animate water waves with sine and cosine!

Merging the Two Waves Together

Following on the last tutorial, in this one we merge and stack the two wave effects to randomize our water.

Functions in ShaderScript

Learn to write a function in Godot's Shader language!

Water Shadow

In this final tutorial, we generate a shadow mask to enhance our 2d water's look.

Water in 3D

This part is hosted by Bastiaan. He'll run you through the process of coding 3D water.

download files

updates / code patches

Become an Indie Gamedev with GDQuest!

Don't stop here. Step-by-step tutorials are fun but they only take you so far.

Try one of our proven study programs to become an independent Gamedev truly capable of realizing the games you’ve always wanted to make.

Nathan

Founder and teacher at GDQuest
  • Starter Kit
  • Learn Gamedev from Zero
Check out GDSchool

You're welcome in our little community

Get help from peers and pros on GDQuest's Discord server!

20,000 membersJoin Server

Contribute to GDQuest's Free Library

There are multiple ways you can join our effort to create free and open source gamedev resources that are accessible to everyone!

Site in BETA!found a bug?