Video game development seems like it's always on the precipice of the next big thing, and that includes the topic of this GDC Masterclass. Computer science instructor Dr. Russell Campbell is here to maximize your skills and get you ready for whatever your next project entails in this course on Unity shader data-structure programming, being taught during the AI Summit at London Tech Week.
Russell talked with GDC about his upcoming Masterclass, Intro to Unity Shader Programming, which takes place Thursday, June 16 from 9:30am to 5:30pm BST.
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 Masterclass will combine the advantages of both data structures together with the powerful processing available in GPUs. Attendees 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.
This class is most relevant for folks familiar with C# scripting in Unity, and have a basic understanding of vector math for 3D.
Below is an edited, condensed version of our interview.
GDC: How do you feel about returning to in-person for this upcoming Masterclass, and what do you feel in-person and virtual instruction styles each offer attendees?
Russell Campbell, computer science instructor: An in-person Masterclass allows attendees to connect with each other with the full real-world experiences we've all been missing the past few years from pandemic restrictions. Attendees for shader programming will all have an intense sense of curiosity and a motivation to begin to see what can be possible with their computers' separate GPU.
Virtual instruction definitely makes things more accessible for attendance, however everyone is much more familiar now with the limitations of the technology when meeting together online. There are easily many failure points with both the software and hardware, and it takes much more patience and planning for contingencies tto deal with them.
GDC: What are the benefits of working in a small group environment for this Masterclass—especially in teaching a technical skill like building data structures for shader programming?
Russell: We can debug together a bit faster. I will be able to physically see your computer and get a faster idea of what the issues might be. Shader programming depends heavily on which kind of computer architecture you have, but at least the industry is working towards standards and other aspects that are in an effort to mitigate the complex issues.
GDC: You started your academic studies in mathematics, how has that experience benefited your career and what are some of the ways it’s been implemented?
Russell: Mathematics for me led to the analysis of programs. Long ago, Euclid famously replied, "There is no golden road to geometry." Logical thinking lays the foundation of that road—which, unfortunately, does not include any gold pavement—but brought to me an understanding of the theoretical limitations of computers. Shader programming could perhaps be very much the full realization of the "geometry" Euclid had originally only taught as the renderings within human imagination. So, mathematics led me to an extremely fun pairing of itself with art.
I have been using shader proramming to create graphics images I can use in my research for mathematics and computer science, specifically graph theory. There is quite a lot to explore, and I look forward to working with everyone in GDC Masterclass in London!
Be sure to head to GDC Masterclass for more information on Russell's Intro to Unity Shader Programming course, which runs June 16. This course is happening in-person at London Tech Week's AI Summit, taking place at Tobacco Dock.
GDC returns to San Francisco in March 2023, and the call for submissions opens this summer! For more information, be sure to visit our website.