Learn to Write Unity Compute Shaders

Harness the power of the GPU

4.40 (413 reviews)
Udemy
platform
English
language
Game Development
category
instructor
Learn to Write Unity Compute Shaders
4,791
students
6 hours
content
Mar 2023
last update
$84.99
regular price

What you will learn

How to write Unity Compute Shaders

How to use ComputeShaders in post processing image filters

How to use ComputeShaders for particle effects and flocking

How use StructuredBuffers to share data between a ComputeShader and an instancing Surface Shader

Using ComputeShaders to handle fluid simulations

Using ComputeShaders to create a Physics engine

Why take this course?

By learning to create Compute Shaders, you will put yourself at the cutting edge of Unity development. Unlike a traditional shader, you can use a Compute Shader to handle any data manipulation problem, where having dozens (or even hundreds) of threads running simultaneously causing a bottleneck in your game to run many, many times faster. In this course you will start from small steps, learning the basics of compute shaders. First, we look at passing data from the CPU to the GPU using buffers. Then we’ll look at using these buffers in our calculations. Once you have this initial grounding, you learn how to use these techniques to create blisteringly-fast post-processing filters. You can use Compute Shaders to handle particle effects and flocking calculations. In the course, you'll create a flock of thousands of birds where each bird flaps its wings in sync with its speed through the air. Divide and conquer is the way, with Compute Shaders. By using hundreds of threads running simultaneously, we develop a GPU Physics engine that can handle thousands of tumbling chess pieces. Compute Shaders are ideal for handling the orientation of grass blades as an avatar moves through grass. The challenging subject of fluids (both 2D and 3D) are covered in the course and you'll see how much this computationally-intensive field benefits from Compute Shaders.

The resources for the course are presented as a code-along version and a complete version and include over 30 different examples. Unity Compute Shaders provides the ideal platform to learn how to handle complex problems in your games. Flocking calculations using the 3 key rules of Separation, Cohesion, and Alignment are covered in detail. The physics calculations to handle fast collision detection and the forces involved are included (both theoretically and practically). Smoothed Particle Hydrodynamics is a technique for calculating fluid simulations. We'll take you through it from the foundation level.

If you're working with Unity, you need to understand how to use Compute Shaders to ensure your game has the best performance. After all, why let the GPU sit idle while the CPU is working overtime? You'll see massive performance improvements if you switch some tasks to the GPU and handle them with a Compute Shader.

This course uses Unity 2019.4 and is Windows and Mac compatible.

Student feedback

"This course is simply amazing. I always wanted to learn those topics and finally got some incredible resources. Thank you a lot. Btw I loved the didactic. The default scenes and challenges are really helping me to stick with the course without getting frustrated. The topics covered are very difficult but you made it in a way where we can really get step by step and at the same time seeing incredible things on screen!"
"This course is an intensive, well explained, understanding on how compute shaders work, impressive results and explanations"
"Amazing course - followed up Penny De Byls CG Shader course with this one and they dovetail excellently. Nicholas does a great job with some interesting projects and great concepts - loved the section on fluid simulation."
"I have just started the Compute Shaders course from Holistic 3D. Loving the course, and I am finding it super easy to understand! Been looking for a decent tutorial for ages, and this is definitely the one I have been looking for!"
"Great tutorial, knowledge is condensed and easy to acquire. I always wanted to learn programming shaders and GPU computing, so this course is something that fits my needs perfectly!"
"This course excels at filling in the blanks from my self-taught knowledge and understanding of compute shaders. The explanations are concise yet full, all the while aiding the connection of the basics to form a solid foundation!"

"Course is super informative with great pacing (on the fast side) and plenty of challenges along the way. The challenges are why I am giving the 5-star rating. These tend to require some thought, but are solvable using what we have learned, and for my taste, just the right level of difficulty."

"This course is absolutely a must for any 3D graphics developer. It is the best resource I have seen online without a doubt. Nicholas is an amazing instructor and he is able to explain really complicated concepts such as Navier-Stokes equations is very simple terms. I would give 10 stars it if was possible. Way beyond my expectations and I will watch it again several times as references. Thank you Mr. Lever for your outstanding work in teaching incredible content with very accessible language. Please more physics simulation :)"

"This is absolutely worth your time and money if you want to learn about compute shaders.  Nik Lever takes the time to explain the relevant code line by line and is clearly knowledgeable about the subject. His jovial British spirit will encourage even the most jaded souls to hone their knowledge as he presents coding challenges that grow incrementally in complexity as the course progresses. Will be checking out whatever course he creates next."


What others are saying about Nik's courses:

  • Very rich content and impressive didactics. Very good to learn from someone who has mastered the subject and knows how to teach.

  • Nik's style of teaching made me understand everything very intuitively and I'm so comfortable with shaders now.

  • I like Nik's courses, I understand in the way he explains. Great content.

Screenshots

Learn to Write Unity Compute Shaders - Screenshot_01Learn to Write Unity Compute Shaders - Screenshot_02Learn to Write Unity Compute Shaders - Screenshot_03Learn to Write Unity Compute Shaders - Screenshot_04

Reviews

Gustavo
November 7, 2023
This course is absolutely a must for any 3D graphics developer. It is the best resource I have seen online without a doubt. Nicholas is an amazing instructor and he is able to explain really complicated concepts such as Navier-Stokes equations is very simple terms. I would give 10 stars it if was possible. Way beyond my expectations and I will watch it again several times as references. Thank you Mr. Lever for your outstanding work in teaching incredible content with very accessible language. Please more physics simulation :)
Suhaib
June 30, 2023
When I take courses, I like to understand everything about the code I'm writing. Whenever the instructor would write a function, i would pause the video to understand all its lines, and do some tests to confirm my understanding. unfortunately I only made it to section 3, before this course became unbearable. while the instructor does explain some of the lines of code, he doesn't explain all of them in detail. I would recommend people getting this course if: -You want to learn what compute shaders are -You are looking to see examples of the possibilities of compute shaders -You want to understand the general concept behind how compute shaders work in Unity What this course fails at: -Explaining all the logic behind the lines of code -Preparing you to write your own compute shaders Feedback to instructor: -Issues could be resolved by having more slides explaining the code. for example when you write "color /= (float) count; " you could have a slide showing visually what this line does to the pixels of the screen, so that students can understand what the purpose of each line is.
Alberto
June 24, 2023
Overall a good course if you want an introduction to programing physics on Unity. Beware: * You won't see much related on how the shaders that materials use work: this is a course mainly focused on compute shaders! * Don't abandon the course if you don't fully understand the algorithms shown. Much of the stuff you will see is mostly for you to learn the basics about coding shaders. * 3/6 sections are related to physics. If you are not very interested with coding physics you might quickly loose interest. If that's the case then I suggest you to jump directly to the Grass section once you finish Section 3, but you will miss some of the basics. (I don't recommend this course if you are not much into physics) * Section 7 (fluids) is way too theoretical for an intro course As an improvement for this course: I wouldn't have minded having a Section more focused on learning HLSL, sometimes I had no clue what some chunks of the shaders actually do, I just copied them as the teacher did and continued without a real explanation.
Kamila
March 30, 2023
Loved every minute of it, the pacing is great and explanations are very clear and timed perfectly with code + additional brief explanations of underlying physics
Leo
January 24, 2023
It's great! I started taking this course because I was sampling textures with CPU getPixels() and it became super performance heavy. I learned how to do do it with compute shaders, but I'm also learning a lot more.
Matthew
January 16, 2023
Course is super informative with great pacing (on the fast side) and plenty of challenges along the way. The challenges are why I am giving the 5-star rating. These tend to require some thought, but are solvable using what we have learned, and for my taste, just the right level of difficulty.
Michael
September 16, 2022
This is a great course and I’d highly recommend it for someone who already has a basic understanding of compute shaders. However the course goes quite quickly and a lot of the basic ideas are not explained in depth, making it quite difficult to follow along. All in all though, watching the whole course a few times does allow one to understand the basic principals in the end. It’s just not super easy
Yaki
September 14, 2022
Love the way everything is explained, and the need to code myself the examples. It really helps. Pausing and thinking is awesome - I love it.
Omar
July 20, 2022
I have minimal experience using shaders. I appreciate how the instructor respects the viewer's intelligence when defining parameters in the shader functions, and explains what they mean. I don't think I could have gotten a good fundamental understanding of what I am doing with compute shaders using just youtube tutorials if not for this course.
Ahmet
July 10, 2022
lack of exercises, critical parts of the course are fast-tracked by the narrator, not very well named variables and fields, randomisation part is not explained well enough, pronunciation of words by the narrator is not clear
Leo
June 11, 2022
Extremely good in coverage about starting with compute shaders, however the content is very quick and many details of inner workings are not explained and you need to figure a lot of the logic yourself by reading the code. I would also add basic calculus and linear algebra as a prerequisite to this course.
Josh
June 8, 2022
I just like the guy, and he explains the things well with helpful figures. edit: I will say that I did prefer the first couple of sections where the code was written and then explained. I felt that as the series went on code was explained as it was written, at which point I lost focus on what was being said. I also felt that more explanation of what was happening was given in the first few lectures. Overall, still very helpful content and I am much further along with compute shaders than I would be otherwise.
Man
May 28, 2022
Good course with lots of fun challenges and a more advanced skill set. It's a tough one, but worth it.
Charles
April 2, 2022
From what I can tell so far, the times on the videos are very misleading. The amount of info stuffed precisely into every second is impressive. I have to pause and replay the video often to fully understand what's going on. Definitely nothing wrong with that! If this trend continues, I'll be getting substantial value out of this course.
E
February 24, 2022
For this to be a code along course, I should be able to clearly see the text on the screen. But between the quick pace of the instructor and the fact that the code is on the screen for such a short amount of time, and while it is displayed it is obscured by pop-ups from the code editor, it makes it impossible to keep up. Slowing down the video only helps a small amount, there is just too much rewinding to see what was not said, and to hear what was not typed.

Charts

Price

Learn to Write Unity Compute Shaders - Price chart

Rating

Learn to Write Unity Compute Shaders - Ratings chart

Enrollment distribution

Learn to Write Unity Compute Shaders - Distribution chart

Related Topics

3564811
udemy ID
10/12/2020
course created date
2/5/2021
course indexed date
Bot
course submited by