About this Course
4.8
5 ratings
Welcome to Performance Optimization in Unity, the fourth course in Unity's Gameplay Programming Specialization! This course is exam preparation for Unity's Expert Gameplay Programmer Certification Exam. This course will challenge you with a series of realistic programming problems in Unity video-game projects, inspired by one or more of the topics covered in the Expert Gameplay Programmer Exam. Throughout this course, you will learn various optimization techniques, including: optimizing for different platforms, understanding how platform differences can impact gameplay, using Asset Bundle configuration tools, gameplay debugging, and rendering optimization. By the end of this course, you will optimize a 3D "Dual-Stick Survivor" game project for WebGL. This is an advanced-level course, intended for industry game developers or very experienced Unity enthusiasts who are looking to “level-up” their gameplay programming and implementation strategies. To succeed in this courses, you should have at least 2-3 years of experience developing games with Unity. You should be familiar with the full-game lifecycle (working from early concept to launch), creating and working with Prefabs, understanding game asset and animation pipelines, and have some experience with Unity Services. You should also have advanced programming skills, particularly in the C# language....
Globe

100% online courses

Start instantly and learn at your own schedule.
Calendar

Flexible deadlines

Reset deadlines in accordance to your schedule.
Advanced Level

Advanced Level

Clock

Approx. 12 hours to complete

Suggested: 5 weeks, 2-3 hours per week...
Comment Dots

English

Subtitles: English...
Globe

100% online courses

Start instantly and learn at your own schedule.
Calendar

Flexible deadlines

Reset deadlines in accordance to your schedule.
Advanced Level

Advanced Level

Clock

Approx. 12 hours to complete

Suggested: 5 weeks, 2-3 hours per week...
Comment Dots

English

Subtitles: English...

Syllabus - What you will learn from this course

Week
1
Clock
4 hours to complete

Rendering Optimization

For the first week of this course, you’ll begin by optimizing your rendering process. You’ll need to take advantage of Occlusion Culling and LODs to achieve this. By analyzing fill rates and hunting down drops in the frame rate, you’ll make sure your game is displaying smoothly to your user....
Reading
9 videos (Total 33 min), 8 readings, 1 quiz
Video9 videos
The Expert Gameplay Programmer Exam2m
Occlusion Culling6m
Optimizing Performance via Occlusion Culling2m
LOD Methodology8m
Evaluating LOD Distances4m
Analyzing Fill Rates2m
Rendering - Best Practices3m
Minimizing Frame Drops2m
Reading8 readings
The Expert Gameplay Programmer Exam10m
Course Prerequisites & Unity Resources10m
About the Challenges and Solutions 15m
Dual-Stick Survivor - Unity Project Files15m
Challenge 1 - Occlusion Cullingm
Solution to Challenge 1 - Occlusion Culling1m
Challenge 2 - LODsm
Solution to Challenge 2 - LODs15m
Quiz1 practice exercise
GPU Optimization25m
Week
2
Clock
3 hours to complete

Asset Bundles

Long gone are the days of games released and considered final. DLC has expanded the life expectancy of games, some even into decade-long legacies. Other games have found great success in offer customizations that can be downloaded. The rise in mobile gaming has seen DLC as a means on minimizing wait times for players. Unity’s Asset Bundles provide a solution to all these situations, and more for the clever programmer. This week you’ll be determining the optimal configurations to support efficient Asset Bundle integration with your game. You’ll need to analyze needs and issues to determine the best package sizes and methods, and determine the solutions required. ...
Reading
5 videos (Total 20 min), 4 readings, 1 quiz
Video5 videos
Determining Optimal Configurations5m
Identifying Issues3m
Providing Asset Bundle Solutions3m
Using Asset Bundles3m
Reading4 readings
Challenge 3 - Asset Bundlesm
Solution to Challenge 3 - Asset Bundles15m
Challenge 4 - Enemies as Asset Bundlesm
Solution to Challenge 4 - Enemies as Asset Bundles15m
Quiz1 practice exercise
Asset Bundles30m
Week
3
Clock
2 hours to complete

Gameplay Debugging

As games get more complex, so do our bugs. Even if every line of code worked on the first try (it never does) you’d still stumble across strange behaviours arising from unforeseen interactions or unintended behaviours. Not every bug is a game-killer, though, and learning to prioritize those from the annoying-but-harmless is a key skill of any programmer. This week you’ll be debugging your game for issues in level gameplay, NPC interaction, and scene transitions. Of course, every issue requires a solution, though some bugs will need to be prioritized ahead of others. After identifying what needs immediate fixing, it will be your duty to recommend solutions based on scene analysis. ...
Reading
8 videos (Total 28 min), 2 readings, 1 quiz
Video8 videos
General Debugging Techniques5m
Isolating Level Issues1m
NPC Debugging2m
Isolating Scene Loading & Transition Issues2m
Finding the Best Solution5m
Low-Hanging Fruit4m
Game Killers2m
Reading2 readings
Challenge 5 - Refactor the AssetBundleManagerm
Solution to Challenge 5 - Refactor the AssetBundleManager15m
Quiz1 practice exercise
Debugging20m
Week
4
Clock
2 hours to complete

Platform Constraints

Not all the platforms are the same, and games that plan to run on multiple platforms have to take this into consideration. Beyond the differences between one computer and the next, today’s gaming market spans smartphones, tablets, and consoles. Users are viewing games on phone screens and widescreen televisions and VR goggles. They’re mashing buttons, tilting controllers, gesturing, and literally yelling commands. How does that affect your game? This week you’ll consider the impact different platforms have on the input methods available to the user. You’ll also analyze what storage and system resources are available per platform, and devise methods for running your game under those constraints. ...
Reading
4 videos (Total 10 min), 2 readings, 1 quiz
Video4 videos
Platform System Resources1m
Optimizing Runtime Performance per Platform2m
Optimizing Storage per Platform2m
Reading2 readings
Challenge 6 - CrossPlatformInputManagerm
Solution to Challenge 6 - CrossPlatformInputManager15m
Quiz1 practice exercise
Platform Performance20m

Instructors

Dustin Carroll

Senior Technical Artist & Adjunct Instructor
Computing & Digital Media

About Unity

Unity Technologies offers a platform for creating beautiful and engaging 2D, 3D, VR, and AR games and apps. A powerful graphics engine and full-featured editor enable you to realize your creative vision fast, and deliver your content to virtually any media or device. You can easily connect to your audiences on PCs, consoles, the web, mobile devices, home entertainment systems, embedded systems, or head-mounted displays. More than an engine, Unity helps you achieve ongoing success. It offers everything you need to develop quality content, boost your productivity, and connect with your audience. Tools and resources include the Unity Asset Store, Unity Cloud Build, Unity Analytics, Unity Ads, Unity Everyplay, and Unity Certification. Unity Technologies serves millions of registered developers including large publishers, indie studios, students and hobbyists around the globe. ...

About the Unity Expert Gameplay Programmer Certification Preparation Specialization

Welcome to Unity’s Expert Gameplay Programming Specialization! This Specialization is test-prep for the Unity Certified Expert: Gameplay Programmer exam. This Specialization includes 5 courses designed to challenge you with a series of realistic programming problems in Unity video-game projects, the kind true gameplay programming experts face every day. Each challenge is inspired by one or more of the topics covered in the Expert Gameplay Programmer exam, and by the end of this Specialization you will have had extensive, guided practice in the programming skills needed to pass this exam. This Specialization is intended for industry game developers or very experienced Unity enthusiasts who are looking to “level-up” their gameplay programming and implementation strategies. You should have at least 2-3 years of experience developing games with Unity, be familiar with the full-game lifecycle (working from early concept to launch), creating and working with Prefabs, understanding game asset and animation pipelines, and have some experience with Unity Services. You should also have advanced programming skills, particularly in the C# language....
Unity Expert Gameplay Programmer Certification Preparation

Frequently Asked Questions

  • Once you enroll for a Certificate, you’ll have access to all videos, quizzes, and programming assignments (if applicable). Peer review assignments can only be submitted and reviewed once your session has begun. If you choose to explore the course without purchasing, you may not be able to access certain assignments.

  • When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

More questions? Visit the Learner Help Center.