Udemy

Three.js Shading Language and Signed Distance Fields

Enroll Now
  • 189 Students
  • Updated 9/2025
4.6
(17 Ratings)
CTgoodjobs selects quality courses to enhance professionals' competitiveness. By purchasing courses through links on our site, we may receive an affiliate commission.

Course Information

Registration period
Year-round Recruitment
Course Level
Study Mode
Duration
5 Hour(s) 42 Minute(s)
Language
English
Taught by
Sean Bradley
Rating
4.6
(17 Ratings)

Course Overview

Three.js Shading Language and Signed Distance Fields

Learn all about the Three.js Shading Language while specialising in Signed Distance Fields.

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,

  • Add Gerstner/Trochoidal algorithm water effect,

  • Add Clouds,

  • Domain Repetition,

  • Mandelbulb, Juliabulb & Kleinian Inversion fractals,

  • 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.

Sean

Course Content

  • 1 section(s)
  • 30 lecture(s)
  • Section 1 Introduction

What You’ll Learn

  • Threejs Shading Language
  • Signed Distance Fields
  • Using TSL with import maps or a build tool
  • Setting up a development environment
  • TSL imports or color, texture, convertColorSpace and positionLocal
  • Writing Fragment and Vertex Shaders
  • Generate patterns using fract, sin, cos, atan, floor, mod
  • Drawing SDF lines and shapes in 2D and 3D
  • Using Uniform and UniformArray
  • Drawing distance lines
  • Colouring 2D and 3D SDFs
  • Raymarching
  • Lighting 3D SDFs
  • SDF Shadows
  • SDF Reflections
  • SDF Union, Intersect and Subtraction
  • Ambient Occlusion
  • Fresnel Effect
  • Adaptive DPR
  • Atmospheric Scattering
  • Fractal Brownian Motion
  • Gerstner/Tricoidal water algorithm
  • Adding Clouds
  • Domain Repetition
  • Mandelbulb, Juliabulb & Kleinian Inversion Fractals
  • and much more


Reviews

  • R
    Roberto Soto Alvarez
    1.5

    The code is not working even following the teacher. May be the framework THREE Shader Lmguage is not mature enough

  • T
    Tushar Prakash
    5.0

    Starts from basics and picks up smoothly

Start FollowingSee all

We use cookies to enhance your experience on our website. Please read and confirm your agreement to our Privacy Policy and Terms and Conditions before continue to browse our website.

Read and Agreed