Shader Development from Scratch for Unity with Cg (

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

Created by: Penny de Byl

Produced in 2022

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.

Quality Score

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

Overall Score : 92 / 100

Live Chat with CourseDuck's Co-Founder for Help

Need help deciding on a unity course? Or looking for more detail on Penny de Byl's Shader Development from Scratch for Unity with Cg? Feel free to chat below.
Join CourseDuck's Online Learning Discord Community

Course Description

Now Updated for Unity 2017 to 2019
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!
Who this course is for:
  • Anyone fascinated by the way computer graphics works.
  • Anyone wanting to understand how to write their own shaders.
  • Anyone who loves the visual effects that can be achieved through simple code and mathematics.

*Some courses are excluded from this sale. Coupon not working? If the link above doesn't drop prices, clear the cookies in your browser and then click this link here.
Also, you may need to apply the coupon code directly on the cart page to get the discount.

Coupon Code

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.

Hi, I'm Dr Penny de Byl. I'm a full stack developer of most things computer sciency and academic w



100 total reviews

5 star 4 star 3 star 2 star 1 star
% Complete
% Complete
% Complete
% Complete
% Complete

By Quique Grases on 3 weeks ago

Awesome!!Thanks a lot Penny! Couldn't be more grateful.I've been working in the game industry for years and I couldn't agree with you more about your final words. I'm also a teacher and It's true that one of the best ways to learn is teaching the others. I really appreciate your work and I'll see you in your Mathematics for Computer Games Development course.

By Fernando Zorrilla on a month ago

I think this is an awesome course and I can also put in practice right away in severl projects I own!I would like to give a suggestion:The amount of information is huge, and I would suggest that would be awesome if there would be a way to handle the information in a more manageable way. I mean, for example using one single project with several scenes for every chapter (CH38-Scene, CH39-Scene) or handling the shaders like CH57-Challenge2 etc.Currently I'm folllowing the course and I have a chaotic ball of documentation, projects , transcriptions, notes and so on, and i REALLY want to remember as much as posible and grasp all the concepts.Thank you!

By Gilbert Nordhammar on a month ago

Clear and easy to follow, but sometimes I would love if the lecturer explained things a little more in depth

By Anurag Sen on 2 months ago

Personally, I have Went through Many Shader course but this one is Beyond my expectation, Love you Penny :) :)

By Christian Kantner on 2 months ago

missing explanation of the inner working of the used functions in cg code. in a topic like this, thats pretty important. before using functions explain where to find the api reference and how to use it. when typing code explain the idea, the why and how it contributes to the solution instead of just repeating the typed words.but still a good course with a good structure, nice examples, well spoken. it could be perfect.

By Vincent Chu on 2 weeks ago

I think this should be a 50 hours course, each 20 minutes content in the later part of the course contains another hidden 3 hours content

By Costa Anton on 4 months ago

It was a really enjoyable course. The lectures were clear, especially the early ones. Very good explanations of every line of code and the theory video are short enough to not be boring and in depth enough to understand what is going on. The later lectures were a bit more overwhelming, and writing code together is fine, it makes the lecture go by faster, but it also makes it harder to understand what is going on.

By Heather Elroy on 4 months ago

So far it's a pretty good match. I like that they updated it to fit with the new Unitys instead of just Unity 5. I was worried about bothering with it. [edit] They said they've since done the CCs and I have noticed that it has changed and gotten better.One thing I would really have liked to have seen is something more in-depth about the effects of what we're doing on our resource overhead. What are some things to avoid? What are some best practices? What is the effect that having the outline shader on something going to have on our resources?

By Adam Maciejewski on 4 months ago

Penny's courses are definitely the most challenging and educational out there or at least at the very top with other top courses. There are great if you want to become more fluent on the programming side of Unity and you want to have a deeper understanding of the engine itself, how it works, how to influence it or how to imitate it. These courses will give you a foundation to build on your own projects, it is excellent resource of well structured topics. Shaders' course is probably the only one competent out there and at this price it is a must. Sooner or later you will need them, for one when you start optimizing your games. CG language is weird and has an awkward logic but Penny makes it all understandable. I would like her to publish some book on it, like a reference guide containing examples and documentation that this course is built on. Like "Penny's Practical Vocabulary Of CG" :) I am pre-ordering now...

By Stephan Keith on 2 months ago

Great job - interested in teaching the material, not on how cool you can be. Direct, clear, informative.

By Thomas Tumosa on 2 months ago

This course is absolutely bonkers. I remember like 10% of the stuff after going through, but now every time i open up some shader tutorial or anything about lighting and shadows, I am not scared to look at the code and can actually comprehend what most of it does. I feel so smart right now, who wants to hire a shader developer?

By Andrs Balzs on 3 months ago

I'm very satisfied with the detailing explanations. I'm really love Penny's teaching attitude, She's really a great teacher.