This project was chance for me to practice my newly learned optimization skills from the Nanodegee program. Udacity presented me with a VR game that was extremely unperformant, my goal was to use my skills to optimize it to a consistent 90fps.
Performance optimization is one of the most important skillsets for a VR developer, since apps running below the target framerate are essentially unplayable, causing nausea and discomfort. This project simulates a real-world scenario where a VR game has been hastily built with a focus on functionality rather than performance (a common approach while prototyping). You’ve been hired to take the game and make it a performant app ready for release.
In this project, I learned that utilizing lightprobes properly is just as much art as it is science. I was a bit nervous about my implementation here but the reviewers reassured me that my great approach was lit.
This project was about combining various ideas and skills I've been practicing throughout the course. They include:
- Using static and dynamic batching
- Optimizing physics
- Creating object pools
- Caching variables and optimizing code
- Setting up lighting with MSAA
- Baking lighting
- Using light probes
- Using the profiler for performance optimization
-SteamVR
- HTC Vive