Shaders for the Web artwork

Shaders for the Web

Advanced
Course

Learn how to make OpenGL shaders using the programming language GLSL, and gain insight on how the top websites use hardware-enabled graphics.

Purchase this course for $149

Or... get a discount by building a bundle with our learning paths!

Get to know one of the most cutting-edge parts of the web right now: OpenGL shaders. The top websites are using them in their web designs but most sites aren’t due to the lack of understanding about how to use them.

In this course, we’ll show you how to make shaders from scratch using the programming language, GLSL, along with everything you need to know about uniforms, vertex and fragments, and then how to apply them to both 2D and 3D projects on the web.

What you’ll learn

What a shader is exactly and how to write GLSL code

What uniforms, vertex and fragment shaders are

How to apply GLSL code to the web using GlslCanvas and Three.js

How to connect web events like mouse movement and scroll to our shader code using Javascript

Quick mathematical techniques for producing stunning graphics

How to use procedural noise and randomness to create changeable graphics

What you’ll get

14+ hours of video lessons – Practical, go-at-your-own pace learning

Access the community – Join our Slack and connect with thousands of SuperHi students and alumni

Continued help – Help from our expert teachers and educators with years of experience in the industry

Real world projects – Projects and code that you can alter and remix to add to your own sites and portfolio

Resources – Resources to get you started and going post-course

Extra homework challenges – Test your knowledge with exercises based on the course projects

Who this course is for

This course is aimed at creative people who want to make highly-performant graphics for the web.

As this course is applying shaders to websites, you'll need knowledge of HTML, CSS and Javascript to start this course as we’ll be using them within our projects.

If you’re less comfortable with Javascript, we recommend taking our Javascript for Designers course or Experimental Javascript course before this one.

What you’ll need

A computer (Windows, Mac or Linux) with the latest version of Chrome installed and a broadband internet connection. Just that!

Want to try our teaching before signing up? Join our free 'Plan, Design + Code Your First Website' course!

Syllabus

Chapter 1

Slow Breaths

In this first project we’ll start by creating a shader in KodeLife, an app for making real-time shaders, to form a dynamically-generated gradient pattern. We’ll move our shader code out of KodeLife and onto the web and we’ll use a Javascript library called GlslCanvas to set up a WebGL-powered playground.

Chapter 2

Kaleidoscope

We’ll sample areas of texture in both a standard x/y direction but also using angles and distance. We’ll change an image into a mesmerising kaleidoscopic pattern and make it interactive to allow users to interact with their mouse and change the texture within the shader to produce a dynamic effect!

Chapter 3

Alice McCloud

We’ll work with randomness, noise and fractional Brownian motion (these are technical terms for adding grain and natural-looking distortions). Rather than using a static background, we’ll make an organic-looking textured background, before adding real-time color changes, mouse movements, and interactivity.

Chapter 4

Arabella

In this project we'll make multiple versions of interactive art using photography. We’ll add multiple interactive areas to the same web page, all with slightly different inputs and we’ll also go through how to display image textures in their original aspect ratios, along with how to distort and morph textures.

Chapter 5

Neon Nights

Now we'll play with color! We’ll take a standard photography website and add GLSL effects to the images. You'll learn how to subtly layer effects on your websites using a touch of Javascript and shader code. We’ll also work with color within our image textures by splitting the red, green and blue color channels to make new effects from scratch.

Chapter 6

Hi Records

In this project, we’ll talk about how we tie GLSL code to scroll effects in Javascript to softly change color as our users scroll up and down our website. We’ll dive deeper into blending color using step and smoothstep to give us natural gradients. We’ll then take some of the noise effects we covered earlier in the course to add some grain to our gradients.

Chapter 7

The Art of Posing

We'll take a slideshow of history’s greatest posers and add a morphing transition effect. We’ll add multiple textures and look at how to go between textures using timelines. We’ll add in a touch of noise to add some randomness to our transitions too.

Chapter 8

Jellyfish

Learn how to take your shaders to the next dimension! You'll learn the z-direction with the first of our 3D projects and in this site we'll use Three.js to make a metal jellyfish with fully-custom lighting and movements.

Chapter 9

Cryptoquartz

In Cryptoquartz, we’ll generate our very own digital art piece using a combination of Three.js to generate a 3D sphere, and two shaders to alter its appearance. We’ll introduce vertex shaders, then use randomly generated gradients to give it color. We’ll also allow users to change their sculpture using input sliders and save what they’ve made to an image.

Chapter 10

Cloth Studios

In this final project, we’ll discuss how we set up a 3D slideshow using a combination of the techniques we’ve learned. We’ll then add natural cloth-style movement to our textures and interactivity to let our users’ cursors push back the texture. By the end of this project you’ll be very comfortable in writing your own shader code within both 2D and 3D web projects!

Your instructors

Our instructors have decades of professional experience, have spoken at international conferences and have won countless web design awards.

Rik Lomas

Rik (he/him) is a Mancunian coder, teacher and CEO of SuperHi. He was the co-founder of Steer (a code school in London) and has taught several thousand people to code. He is a bit too old to be posting memes on our social media and recently featured as a Sour Patch Kid in the Macy's Thanksgiving Parade.

You might also like...

$69

How to Set Up a Store with Shopify 2.0

Beginner

Join our 45-minute workshop, perfect for beginners/intermediate developers, to learn how to set up a Shopify store using the Dawn theme. We'll guide you step-by-step through the process, starting with installing Shopify's Command Line Interface (CLI).

$69

Introduction to 3D Modeling and 3D Printing

Beginner

Learn the basics of 3D Modeling & 3D Printing and bring your ideas to life!

$69

AI Integration for the Web: ChatGPT Workshop

Intermediate

Join us for an 80 minute, on-demand workshop, where you'll learn how to seamlessly integrate OpenAI's ChatGPT into your web app project.

Still looking around?

View our growing collection of resources, articles and tutorials. We're adding new things to read, learn and watch every week!

INTERVIEW

Catching Up With... Kelsey Gilbert-Kreiling

Agency co-founder, podcast host, and author Kelsey Gilbert-Kreiling chats to us about finding small acts of creativity to unblock your creative spirit, working with celebrity clients, and her latest work: publishing a book and a course.

ADVICE

Ask a Designer #17: How do I communicate design decisions?

How do you communicate your design decisions without sounding defensive? Here's the shift of mindset you might need to stay honest while avoiding conflict or feeling criticized.

ARTICLE

How to Land Your First (or Next) Remote Job

Ana Wang explores whether or not a remote job could be right for you, and shares tips and resources for getting your first (or next) remote job.

FAQs

If you're comfortable working with a computer, then yes!

Learning new and improving your existing skills is about being patient with yourself, building up your knowledge, developing confidence through practice, and with time. We've seen our students around the world do it, and so can you.

Our beginner courses are designed for people new to the subjects. They grow your understanding so you grasp everything you need to start applying your new skills and will also give you a path to dig deeper if you want.

Our teaching style is practical and straightforward and you'll have support from our expert instructors and community for as long as you need.

Still not sure if learning to code is right for you? Take our free Plan, Design + Code Your First Website course or dive into our First Steps to Code guide.

We have quite a lot of students that join us and have done some coding before but want to build up confidence and techniques.

In order to help get you where you'd like to be, have a look at the sites below to see which course you can make from scratch, without any help at all.

Baker & Brown – If you struggle to make this website from scratch, don't worry! We recommend you start off with our Foundation, HTML, CSS + Javascript course.

Jenna Buchholz – If you struggle to make this website from scratch, it's all good! We recommend you start off with our Javascript for Designers course.

Super Shapes – If you struggle to make this website from scratch, have no fear! We recommend you start off with our Advanced CSS + Javascript course.

All of our courses are unlocked and available for students to start their learning and go at their own pace. We do have a suggested weekly structure for some courses, which helps some students stay on track. However, you're definitely free to jump ahead or take as long as you need!

As soon as you checkout and pay, you'll have all the courses you paid for, in your student dashboard available to you immediately. If you're busy and can't start right away - no worries, you can pick it back up later.

At SuperHi, we provide online courses designed for creatives and made for everyone. Take a course on Code, Design, or Project Management 😊

The proof is in the pudding! Our students go on to make their own beautiful sites and some of their stunning work have won digital design awards. Take a look at our Hall of Fame to see some of the sites our students have built, many of which had only taken our Foundation course!

If you're a SuperHi student or alumni and would like to submit your project to be included in our Hall of Fame, please feel free to submit it here.

Yes, we do! All you'd need to do is send the links to your completed projects over to hi@superhi.com at the end of your course. We will review them, provide feedback if necessary, and then issue your certificate!

All our course videos are taught using the SuperHi Editor, but you'll be able to apply everything you'll learn to a code editor of your choice. Many students go on to use other code editors, for example, if their workplace has an existing standard.

Our SuperHi Editor is designed with many smart features to help avoid wasted time looking for things like a typo or missing bracket (which is why we made it!), but the same code concepts apply to any editor.

Yes! You can use your own custom third-party domains and connect them to your sites built with our SuperHi Editor. Additionally, all SuperHi sites come with free SSL Certificates for added protection.

Here's more information on how to connect a third-party domain