This week we get a chance to talk to Matt Stine, Gameplay Engineer. When Matt isn't working with our Designers to make their features a reality in-game, he can be found cooking and enjoying movies with his wife. Keep reading to learn more about his journey from text-based RPG's to Modern Warfare.
Who are you? What do you do @ IW?
My name is Matt Stine, and I'm a Gameplay Engineer at Infinity Ward.
Gameplay Engineers work closely with Game Designers to implement their vision for features in the game. For example, a designer will present an initial request like "Players should be able to stabilize their weapon on objects in the world", along with details on how it should function from a player's perspective.
It is the engineer's job to make the feature a reality in code. This involves careful thought about system performance, behavior in a multiplayer environment, and interactions with other aspects of the game. Implementation is iterative; although engineers are ultimately responsible for writing the code, engineers and designers both contribute ideas and review progress daily to make adjustments. Depending on complexity, a single feature can take anywhere from days to months to complete.
When did you join IW? What did you do beforehand?
I joined Infinity Ward in the summer of 2015. The studio was in the middle of developing Infinite Warfare at that time.
I started down the path of becoming a game developer in my freshman year of high school. My mom, a programmer herself, gave me a book on the C programming language. The first games I wrote were small text-based RPGs. After getting my degree in Computer Science, I found a job in the defense industry developing satellite control and data visualization software. During this time I continued to study game development and work on hobby projects at night.
My break into the game industry came when my good friend and former coworker, a game industry veteran, invited me to interview at the Kojima Productions Los Angeles studio. I landed the job and shipped my first title in 2015. Shortly after, I moved to Infinity Ward where I have developed features for Infinite Warfare and Modern Warfare.
What do you like to do outside of the studio in your free time?
Most of my free time is spent playing games, particularly competitive shooters like Call of Duty and Overwatch. Whenever we have time on weekends, my wife and I watch movies and anime. I also love to cook—my specialties are smoked meats, Neapolitan pizza, and authentic Chinese food.
Tell us about a recent piece of work that you are most proud of.
I'm proud of my work on the Weapon Mount feature in Modern Warfare. This was a huge technical effort and required a ton of iteration with designers.
We realized early on that the game couldn't analyze the shape of the nearby environment at runtime to find mount locations while staying within our CPU performance budget. Instead, we decided to modify our level editor software to enable Level Designers to explicitly mark mountable corners in each map. The map compiler was modified to collect and organize these corners (technically line segments) into an efficient data structure for use while the game is running. This data structure was designed to minimize the cost of identifying nearby Mount locations at runtime while using the least amount of memory possible.
After all of that work to simply make the mountable corner data available for use in the game, tons of development time was spent iterating on the player-facing aspects of the feature. Control schemes, player movement, animation systems, and even details like deciding which corner near the player is the “best” to mount on went through multiple development cycles. New ideas were tried. Ideas that didn’t work well were discarded.
What advice would you give to someone wanting to get into Gameplay Engineering?
Ensure that your programming (preferably in C) and linear algebra fundamentals are strong. Understand exactly what happens in a computer as it executes your program—be familiar with how processors and memory work. Gather inspiration and knowledge from GDC talks, game development books, and online resources like Gamasutra. Build and ship your own game, no matter how small!
Be sure to check back next week, where we talk with Patrick Hagar, Lead VFX Artist - who is responisble for puting together some of the huge set-piece moments in Modern Warfare!