GDC is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Intro to Unity Shader Programming

Russell Campbell

Dec 9 & 10, 2021 | 10 am-3 pm PT both days

$999 | Limited seating

Course Description

Commonly used data structures in programming bring solutions to problems otherwise not possible without them. However, many data structures are designed with an object-oriented approach where it is not trivial to pass them to shader code. This course will combine the advantages of both data structures together with the powerful processing available in GPUs. We will design data structures that can be passed to shader code in order to achieve graphical effects that can, for example, involve collision detection and work together with Unity's Physics engine.

Course Type

Two-Day Course: This is a single course that takes place over two five-hour days with limited breaks.

Intended Audience

Those familiar with C# scripting in Unity, and basic understanding of vector math for 3D.

Key Takeaways

After completion of the course, students will be able to:

  • Understand the mathematics to manipulate 3D data in real-time

  • Be capable of designing data structures that can be used in shaders
  • Combine graphical effects to customize shader code
  • Increase the efficiency of shader code to control computational resources.


Students will need a computer that supports 3D graphics in at least Unity 2020 LTS. There will be one assignment after 3 pm for the first day which students will bring to the start of schedule for the second day. Prospective students must also:

  • Be able to type at least 30 wpm
  • Be confident in scripting in Unity 2020 LTS using C# (will not be covering the topic of Unity Jobs)
  • Understand the programming concept of recursion
  • Be comfortable working with 3D coordinate spaces
  • Have a discrete graphics card (not integrated)

Instructor Bio

Dr Russell Campbell is a computer science instructor having taught at universities in the Vancouver, British Columbia area over the past four years. In the Fall 2020 Semester, Dr Campbell designed and taught a 4th-year game programming course at Vancouver Island University and managed eight teams of students creating their own games using various game engines. This Fall 2021, Dr Campbell is supervising a 4th-year student's capstone project to develop an RPG action game in Unity.

Please review the GDC Masterclass Registration Policies prior to registering.


Connecting the Global Game Development Community

GDC Vault icon
Game Developers Choice Awards icon
Independent Games Festival (IGF) icon icon