This course presents a comprehensive guide to creating vertex and fragment shaders using Unity's visual programming tool Shader Graph. There's no need for prior knowledge or programming of shaders needed.
Over 15 Hours of step-by-step tutorials and challenges.
Shaders developed in this course work with Unity 6
This course presents a comprehensive guide to creating vertex and fragment shaders using Unity's visual programming tool Shader Graph. There's no need for prior knowledge or programming of shaders needed.
Over 15 Hours of step-by-step tutorials and challenges.
Shaders developed in this course work with Unity 6
Filled to the brim with follow-along and shader creation challenges, this course will give you a thorough grounding in shader development and the fundamental practices in Physical-Based Rendering (PBR) with a member of the Unity Game Engine's Educational Advisory Board and an acclaimed academic and teacher with over 30 years experience.
This course will guide you through the process of creating your own visual surface effects for colouring and lighting game objects. It gently covers the mathematics of light and surfaces and steps you through the recreation of some of the most popular shaders, including Fresnel, Complex Water, Holograms, Flowing Lava, Liquids, Fire, and more. The shader concepts will be presented in an easy-to-understand manner to help grasp 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 Unity's Built-In, Universal, and High-Definition Render Pipelines.
This course has been developed with Unity 2021.3 LTS
Learn how to program and work with:
Unity's Shader Graph.
Model, Camera, and World View Coordinate Spaces.
Lighting Effects.
Procedurally Generated Patterns.
Normals.
Scene Depths.
Refraction for Transparent Surfaces (and much more)
In this course, Penny teaches all the invaluable skills you will require to interact with the computer graphics render pipeline using Shader Graph in Unity from scratch using her internationally acclaimed teaching style and knowledge from over 30 years of working with games and graphics. Through detailed descriptions and hands-on workshops, you'll learn all you need to know about rendering queues, vector mathematics, graphics buffers, colour theory, 3D meshes, texture mapping, lighting models, and much more.
Contents and Overview
After diving right in and creating your very first Shader Graph shader from scratch, you delve into the fundamental concepts of creating an unlit shader and discover how colours can be mixed for surface effects, and how to put an external texture onto a game object.
Following this, you will examine a variety of lighting models and how lights and surface textures can influence the final look of a render. In this part, you will develop shaders with different lighting and investigate physically-based rendering that caters for metallic surfaces and considers world reflections. The remainder of the course concentrates on building up your essential mathematics skills related to creating shaders and focussing on the essentials that you can take and customise for your own needs.
Finally, there's an advanced water shader section on adding special effects to water surfaces such as depth colour, waves, surface foam, and splash particles.
What students are saying about Penny's other shader courses:
This course is amazing. Penny has got to be, hands down, one of the best instructors on game development, Unity, and C#. In the span of three hours, I have learned so much that it rivals my graduate program.
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 profound 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.
This lecture contains a welcome message from the teacher.
H3D has a bustling online student community. Here's how to get involved.
Important Reading on Common Issues students have and how to ask for help.
In this lecture students will learn how to install Shader Graph and gain an overview of the editor interface.
In this lecture students will create their very first shader using the shader graph editor.
In this lecture students will learn about the rasterisation pipeline and how the shader graph fits into the programming of rendering effects.
In this lecture students will learn about the datatypes used in shaders and explore the subset of these provided by shader graph.
In this lecture students will learn how to make the most basic of flat colour shaders in shader graph and apply to a model.
In this lecture students will learn about the data structure of colour and it's importance in shaders.
In this lecture students will learn how vertex positions can be used to set pixel colours.
In this lecture students will learn about normals and how to use them to colour a model.
In this lecture students will learn how multiple colours can be mixed together and the ramifications of choosing differing operations to do this.
In this video student will learn how to create a custom node and use it to create their own functions for mixing colours.
In this lecture students will learn how to use the pixel colours from a texture and apply them to a 3D model according to the UV values.
In this lecture students will learn how to create a simple diffuse lighting shader from scratch.
In this lecture students will learn about the Phong, Blinn-Phong and Physically Based Rendering Shaders.
In this lecture students will learn about the physics and theory involved in physically-based rendering and then setup up their own shader to use it.
In this lecture students will learn how to use a texture to set the values of metallic and smoothness.
In this lecture students will discover how to implement sliders to interface with their shaders and change the intensity of a variety of values.
In this lecture students will learn how to use a skybox or sphere map to create reflections on an object.
In this lecture students will learn how to correct a reflection shader to reflect an environment and how to add that environment to the camera's background.
In this lecture students will learn how to create reflections of world items on the surface of objects.
In this lecture students will learn about ambient occlusion and use an external texture to add these subtle shadows to a model.
In this lecture students will begin to explore the differences and conventions between tangent, object, view and world space.
In this lecture students will explore the object space further and take a look at manipulating the vertices of an object.
In this lecture students will investigate using vertex world space positions to colour a shader.
In this lecture students will explore the view space coordinates and how they are calculated and used.
In this lecture students will learn about tangent space and explore why and where it is used.
In this lecture students will be challenged to make a shader with multilevel colours and a normal map.
In this lecture students will gain an overview of Unity's Render Pipelines and for what they are best suited.
In this lecture students will learn take a first look at the Unity Editor with a URP Core Project and create a simple shader.
In this lecture students will learn how to create a sub graph and use it in a shader.
In this lecture student will get their first experience creating a HDRP project.
In this lecture students will learn what bent normal maps are and how they are calculated to improve ambient occlusion shading.
In this lecture students will learn about the differences between forward and deferred rendering, what each offer and how they affect shaders.
In this lecture students will examine the basic principle of blending two images together.
In this lecture students will learn the colour blending techniques of linear and colour burn.
In this lecture students will learn about many more mathematical equations that can be used to generate different blending effects.
In this lecture students will investigate the blend modes that emphasise the blackest pixels.
In this lecture students will learn about the lightening blend modes as well as how to introduce an alpha map into the shader to create a hole.
In this lecture students will learn about the time node and how to use it to scroll a texture across a surface.
In this lecture students will learn how to create a twirling portal shader implementing the time node and
In this lecture students will learn about the lerp node and how it can be used to blend between colours. It will be used to modify the colour on Zombunny to display a health status.
In this lecture students will begin to use lerp to adjust the level of a liquid inside a bottle model.
In this lecture students will learn how to complete a liquid shader by making the top part of the lerp into air.
In this lecture we will revise the concept of tiling and examine how it works to seamlessly paste a texture onto a surface.
In this lecture students will learn more about masking textures and how to integrate them with other texture maps.
In this lecture students will learn how to use a time node to animate the colour of a masked texture.
In this lecture students will learn how to use a sine wave to displace the vertices on a flat plane.
In this lecture students will learn how to implement simple noise to set the heights of a terrain creating shader.
In this lecture student will learn how to create a simple wood grain texture using simple noise and smooth step.
In this lecture students will experiment with other procedural effects and normal map creation to improve the wood grain shader.
In this lecture students will learn how to create a procedurally generated tiling pattern.
In this lecture students will learn about the variety of procedural shapes that can be used and tiled in ShaderGraph.
In this lecture students will learn about the origins of the Voronoi Diagram and use it to create a rippling curtain effect.
In this lecture students will learn how to use gradient noise to create a fire flame effect.
In this lecture students will complete the simple fire shader and begin turning it into a subgraph.
In this lecture students will learn how to use multiple layers of flame effects with different ramp images to create a more complex fire effect.
In this lecture students will learn how to create a displacement effect of a diffuse texture to make an object look as though it is under rippling water.
In this lecture students will learn how bump mapping works to fake geometry.
In this lecture students will learn about the original method of bump mapping.
In this lecture students will learn how normal maps store vector information and then how ShaderGraph can. be used to blend maps together.
In this lecture students will be challenged to create their own normal blending nodes and to apply a different blending technique.
In this lecture students will learn how to calculate a Z value for normals that have had the X and Y values modified. They will also be challenged to add tiling functionality to the normal maps.
In this lecture students will implement scrolling with a normal map as well as a procedural animation to the uv values of a texture to animate it from within.
In this lecture students will learn how to use a shader to find the intersection between objects in the scene to colour around those intersections.
In this lecture students will examine how to use a texture to define the depth intersection and then be challenged to change its colour.
In this lecture students will learn how to expand the size of the depth intersection zone.
In this lecture students will learn how to make a forcefield shader using the depth intersection and fresnel effect.
In this lecture students will learn how to complete the forcefield shader by adding a fresnel effect to the depth intersection and animate the texture.
In this lecture students will learn how to use depth intersection to colour objects below a water plane and be challenged to use Voronoi Noise to place ripples on the surface.
In this lecture students will learn how the fresnel effect can be used to create a crystal/glass effect.
In this lecture you will be challenged to create a holographic shader with a variety of visual effects.
In this lecture students will learn how to create refraction.
In this lecture students will learn how to extend a refraction shader to create an ice effect.
In this lecture students will learn how to create an iridescence effect which shows on highly polished surfaces.
In this lectures students will learn how to setup a scene with different meshes and begin creating a scrolling water texture.
In this lecture students will learn how to include refractions in the flowing water.
In this lecture students will start creating the shader for the pool water beginning with setting the colour dependant on depth.
In this lecture students will add normals to the water as well as use the same nodes to add refraction.
In this lecture students will learn how to use gradient noise to create waves for vertex displacement.
In this lecture students will learn how to use the Fresnel node with scene depth to add foam on top of the pool around the edges.
In this lecture students will learn how to setup a particle system on a mesh emitter and use shader graph to colour particles.
In this lecture students will complete the water project by learning how to pass particle system values into a shader graph in addition to changing the colour of the waterfall,
OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.
Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.
Find this site helpful? Tell a friend about us.
We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.
Your purchases help us maintain our catalog and keep our servers humming without ads.
Thank you for supporting OpenCourser.