Learn how to add OpenGL shaders using the programming language GLSL, and gain insight on how the top websites use hardware-enabled graphics.
What you'll learn
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.
This course is aimed at creative people who want to make highly-performant graphics for the web.
A computer (Windows, Mac or Linux) with the latest version of Chrome installed and a broadband internet connection. Just that!
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
Quick mathematical techniques for producing stunning graphics
How to use procedural noise and randomness to create changeable graphics
Practical, go-at-your-own pace learning
Join our Slack and connect with thousands of SuperHi students and alumni
Help from our expert teachers and educators with years of experience in the industry
Projects and code that you can alter and remix to add to your own sites and portfolio
Resources to get you started and going post-course
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!
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.
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.
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.
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.
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!
Our instructors have decades of professional experience, have spoken at international conferences and have won countless web design awards.
Our intelligent code editor is designed to help making websites from scratch easier. Comes with any course, or sign up for a free SuperHi account for access.
Creative goals need a focused learning path – enter our tailored collections. Choose one of ours or make your own by choosing more than one course. Either way, you'll get a discount.
Want to get weird with code? Push your experimental side to the edge.
Still looking around? View our growing collection of resources, articles and tutorials. We're adding new things to read, learn and watch every week!
Nika offers advice to a creatively-deprived developer pondering a career change to product design.
How much of life are we cropping out? Nika reflects on this vital question in a brief history of aspect ratios in tech.
Yes, we do! All you'd need to do is send the links to your completed projects over to [email protected] at the end of your course. We will review them, provide feedback if necessary, and then issue your certificate!
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.
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.
Yea! After the course is over, you'll still have our support when it comes to things like career questions, resume, and portfolio reviews, etc. all to help you get the job and career you want.
We also provide 1:1 sessions for some of our courses! The number of sessions depends on the course that you signed up for.
If you'd like to arrange a 1:1 session after you've completed your course, email us at [email protected] and we'll happily arrange that for you!
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
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.
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.
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!
So, if you purchase a course or collection today, you'll have all courses 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.