Three.js Shading Language Tutorials
Welcome to my course on Three.js Shading Language (TSL) and specialising in Signed Distance Fields.
The tutorials in this documentation supplement my Three.js Shading Language Course on Udemy and YouTube
![]() |
✔ NEW STUDENT DISCOUNT ✔ One Time Payment per Course ✔ Full Lifetime Access ✔ Certificate of Completion ✔ 30 Day Money-Back Guarantee Click Here to Register at Udemy |
![]() |
* Access To All Of My Other Courses Included * Loyalty Badges * Cheapest Option * Cancel Subscription Any Time Click Here to Register at YouTube |
Course Access
There are 2 possible ways to access the video content in this course.
- Udemy : https://www.udemy.com/course/threejs-shading-language
- YouTube Membership : https://www.youtube.com/@sbcode/join
Overview
Three.js Shading Language (TSL) is a framework built to simplify shader development within the Three.js ecosystem.
Signed Distance Fields are a way to draw scenes and animations predominantly using mathematical functions.
You can draw anything with Signed Distance Fields, and TSL makes that more accessible for developers, especially those without deep knowledge of low-level GLSL, WGSL or graphics programming.
So, in the course we will cover,
- Basic environment development setup,
- Importing the required libraries,
- Using import Maps or a bundler / build tool,
- Discuss the prerequisites of a TSL scene,
- Fragment Shader coordinates,
- Create several animated patterns from easy to more advanced,
- Draw various styles of lines,
- Implement uniforms and uniform array,
- Interact with our scenes using a GUI,
- Learn the basics of sign distance Fields,
- Draw distance lines using SDF information,
- Colouring and animating 2D SDFs,
- Practice by building something and adding keyboard interactivity,
- Learn the basics of Ray marching,
- Lighting 3D SDFs,
- Using Lambertian, Ambient and Phong specular,
- Using hard and soft shadowing,
- Implement SDF reflections,
- Implement adaptive device pixel ratio,
- Colouring and animating 3D SDFs,
- Add atmospheric Scattering,
- Implement, Ambient Occlusion,
- And apply Fresnel Effect,
- Learn all about Fractal Brownian Motion,
- and much more
By using TSL's node-based shader graph system, developers can create and manage shaders without needing to write complex GLSL or WGSL code manually.
TSL is renderer-agnostic, meaning shaders created with it work seamlessly across different rendering backends like WebGL and WebGPU.
Since TSL is written at the Javascript or TypeScript layer, along side your existing Three.js code, you will be able to benefit from the features provided by your IDE, such as IntelliSense code completion, code formatting and linting. Your final production code can also benefit from tree shaking provided by your bundler.
Thanks for taking part in my Three.js Shading Language (TSL) and Signed Distance Fields course, I hope to see you there.
Sean