Skip to content
UdemyUnityPaid courseIntermediate levelCertificate

Shader Development from Scratch with Cg - Unity 6 Compatible (Udemy.com)

Learn to program the graphics pipeline in Unity for creating unique visual surfaces for game objects.

Created by: Penny de Byl

Last updated February 2025

icon
What you will learn

  • Use Unity Shaderlab to create their own shader effects with CG/HLSL.
  • Apply their knowledge of simple mathematics to change the visual surface of virtual objects.
  • Work with mesh vertices and textures to develop unique rendering effects.
  • Demonstrate a knowledge of the graphics pipeline and apply it to problem solving shading issues.

How it compares

Against the other 183 rated Udemy courses in Unity on CourseDuck:

  • Rating4.2 out of 5higher than 13% of them
  • Reviews3,521#11 of 184 by number of reviews
  • Length10.4 hourslonger than 50% of them
  • Last updatedFebruary 2025more recently than 79% of them

icon
Quality Score

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 84 / 100

icon
Course Description

Now Updated for Unity 2017 to Unity 6!

This course presents a comprehensive guide to programming with Cg and High Level Shader Language in Unity's Shaderlab, to create your own visual surface effects for colouring and lighting game objects. It covers the mathematics of light and surfaces and steps you through the recreation of some of the most popular shaders. Many computer graphics concepts will be presented to help you understand the graphics pipeline and provide you with an essential toolkit of rendering knowledge, that will have you developing your own transparent, animated and texturised shaders in no time.

In this course, Penny teaches all the invaluable skills you will require to program the computer graphics pipeline in Unity from scratch using her internationally acclaimed teaching style and knowledge from over 25 years working with games and graphics.  But hold on tight as you'll be taken on a journey across the computer graphics realm as it is taught to post-graduate university students. Through detailed descriptions and hands-on workshops examining all you need to know about rendering queues, vector mathematics, graphics buffers, colour theory, 3D meshes, texture mapping, lighting models and much more.

Learn how to program and work with:

  • variables and packed arrays

  • meshes, vertices and UVs

  • the mathematics for working with objects in 3D and 2D spaces

  • a variety of lighting models from creating flat shaded objects to highly reflective shiny surfaces

  • bump maps for adding extra depth and dimension to surface textures

  • special effects such as holographic, scrolling textures and surface deformations

  • the variety of graphics buffers used in the rendering pipeline

  • forward and deferred lighting

  • surface, vertex and fragment shaders written in CG/HLSL

  • volumetric rendering

Contents and Overview

After diving right in and creating your very first shader from scratch, we will begin the lessons by examining how 3D models are structured and how that is used within shader code to colour and display the surface in computer graphics. You'll discover all the properties of a shader and how they can be controlled in code and via values fed in through Unity's Inspector.

Following this, we will examine a variety of lighting models and how lights and surface textures can influence the final look of a render. Included here, an overview of the buffers involved in the rendering queue will be given with practical examples for creating special effects that require more than one draw call. Students will also be exposed to the power of vector mathematics and especially the dot product and its role in creating beautiful effects such as outlines, rim lighting and holograms. In addition, issues surrounding transparency and blending will be discussed along with many practical hands-on workshops in which students can flex their newfound skills to interrogate the code they write for better understanding.

The next section brings together all the skills learned throughout together, to develop some of the more popular complex shaders including animated plasma and animated water with waves.

Finally volumetric shaders are covered in which you will follow along to create special effects such as fake geometry, fog and clouds.

What students are saying about this course:

  • This is the best course I've ever taken. It is perfect for me. I worked for 15 years in feature animation. A large part of my career was spent developing shaders for a proprietary renderer. This course has already helped me to bring the value of my previous experience into Unity.

  • Best shader course I've come across. There are enough and more tutorials on youtube to teach you how to develop your own shaders, but nothing falls into the class of Penny's tutorials. They are clear and to the point. Really happy about this one.

  • Wow! Thank you so much! If there were 10 stars - this course would deserve it. Going from absolutely knowing nothing about Shader writing to have a profund understanding about it.

  • I wanted to let you know that I just finished your shader course and thought it was fantastic. It was a pleasure to take the course and finally get a grasp on a topic that seemed so foreign to me not so long ago. Your teaching style and personality really worked for me and made learning a breeze!

icon
Udemy Discount

The discount is applied through our link. Open the course from here and Udemy's current promotional price is applied at checkout on most courses, no code to type.

Some courses are excluded from Udemy's promotions. If the price does not drop, clear your browser cookies and use the button again.

icon
Instructor Details

Penny de Byl

Hi, I'm Dr Penny de Byl.  I'm a full stack developer of most things computer sciency and academic with a true passion for teaching.  I've been teaching others about games development, programming, computer graphics, animation and web design for over 25 years in universities in Australia and Europe at the full professor level. I've also consulted for Unity, SAE, the Australian Institute of Entertainment and Wikitude. My best selling textbooks including Holistic Game Development with Unity are used in over 100 institutions world-wide.  My graduates work at companies like Apple, Ubisoft, LinkedIn and Deloitte Digital.

I have an honours degree in computer graphics and a Ph.D. in artificial intelligence for games characters.  Over the course of my career I've won numerous awards for teaching excellence at the state, national and international levels including the Australian Learning and Teaching Council's Excellence in Teaching Award and the Unity Mobile Game Curriculum Competition. My approach to teaching computer science and related fields is project-based giving you hands-on workshops you can immediately get your teeth into.

I want you to leave my virtual classroom fully armed with a toolkit of skills for life-long learning.  I'm excited to now be focussing my efforts full-time on Udemy to bring my years of knowledge and experience to those eager to learn about technology.


icon
More courses by Penny de Byl

$14.99

$11.99

$13.99

$11.99

$10.99

$12.99

icon
More Unity courses

$79.99

$74.99

$149.99

$13.99

$149.99

$16.99

icon
Reviews

4.2

3,521 ratings on Udemy

Select a bar to show only those reviews.Select the bar again to show every rating.

By Luis Garcia Castellanos on 1/23/2024

Pretty good introductory course if you know little about computer graphics and want to get into the subject. The course is pretty fun and interactive and with lots of emphasys on explanation, mostly up until the middle end parts of the course (advanced / volumetric shaders) where you'll be thrown tons of lines of code, math and numbers that magically become pretty things without much insight into what they do. So if you like courses carrying you step by step you'll probably get frustrated in these sections and just end up copying and pasting the code and watching the pretty effects. You'll still end up learning something valuable on each lesson.

By Dimitri Suz on 11/21/2022

It's a great course for me to understand how shaders work. It explains how the pixels are calculated, how the light can be involved into the calculation and using of dot function for it, How blending between different colours can be done together with alpha/transparent channel. Using of time function to get moving textures and even vertices for waves. In general speaking, i enjoyed very much and would like to see more details about how data or vectors are converted from vertex shader and passing to fragment shader. Especially from one space into another and changes are somehow related with last 2 components z and w. Volumetric rendering blown my mind :D. I liked to see how it works and would like to see it explained in step by step what happens at which step. I think that could already by a new course. Before watching it i would recommend to see Mathematics for Computer Games Development where you will get information about operating with vectors and after that you will enjoy that course even more. Thanks to Penny for creating such a good course!

By Konrad Swart on 7/3/2022

I had tried another Shader course, and this guy went right to the difficult part. This shader course gives, in the very first lecture about the shader, a shader I already can use immediately! I do have a point of critique, though. It is very frustrating that I have to find all textures myself. They are not given into the resources. Since I am an absolute beginner in making shaders, I often haven't a clue where to find them. I know Penny de Byl recommends a website where one can find textures, but it interrupts the flow of learning to look up what, exactly, this website was, and then to find the textures I need. But apart from this, a very good course. I do not see a reason to reduce the number of stars because of this critique. In practice one has to figure this out for oneself anyways.

By Anonymized User on 6/14/2022

This course straightly gets to the work before structuring a good foundation on the underlying theory and the terms. For example, she never gets into the detail about what a sampler or sampling is, how the given functions process the input, etc. Too much additional research is required to really understand the topic that is taught here. update: I am updating my review after learning some valuable information and getting some inspiration about what is possible with the shaders. But still, especially Section 7, is full of just some chunk of "follow me and it will work" kind of information. This topic requires a more in-depth explanation of the underlying math and its practical uses. Still I respect the instructor's effort on trying to teach something that is really hard on this specific platform. This at least gave me some perspective on the topic. But I am not going to continue since I am learning nothing since the 6th section.

By Daniel Buitrago on 11/21/2020

Exciting so far!

By Eric dunsky on 11/14/2020

I wanted to get started with shaders and Graphics, this is the perfect course for doing so. Everything is well explained and there are enough excercises to practice the things learned!

By Jonatan Catalan on 11/7/2020

The effects differ to much from the videos and the results one gets

By Michael McMurdy on 11/7/2020

This course really helped me understand a lot of things I wasn't able to figure out on my own. There were a lot of cool effects as examples and it was a lot of fun!
The volumetric portion of the course was kind of a slog though. There was a lot of information to digest all at once and things broke very easily.
I still would have given it 5 stars if not for the variable names. It seems silly but taking the extra time to give them descriptive names would have made it easier to understand what they were doing and it would have made it much easier to look back at the code later for examples. In some cases I had forgotten the purpose of certain things by the next lecture.
Besides that, more explanation for a few syntax related things like the macro's would have been pretty cool. I still don't really understand why they need "/" at the end.

By Jorge Restrepo on 10/22/2020

I've been working in the video games industry for the last 2 and a half years, that means I already know a thing or two but still have a lot to learn... That being said, I think this course is great, now I'm far more confortable creating my own shaders.

By Nicholas on 10/11/2020

I paused, tried on my own, and made the exact error you highlighted. Good job including that in the explanation.

By John Asuncion on 10/7/2020

A lot of useful information that I never got to learn when I was doing my own self study on shaders.

By Aaron Fernandes on 10/3/2020

I always wanted to learn shader, but couldn't understand it because of the complexity behind it. Your videos make it very easy to understand and also cover any questions that pop up. By far one of the best tutorials I've ever had. 10/10 would make my bunny blue again

Showing 12 of 416 reviews