Hey, Ray! Thanks for taking time out to talk with me today.
Can you tell me where do you work and what is your current title?
“I’m currently at Unity working as a Senior Software Engineer on the Spotlight Team.”
“I’m mostly specializing in 3D graphics.”
“Yeah. I was always fascinated by how the pixels get on the screen from when I was playing on my IBM PCjr.”
IBM PCjr.? That’s pretty old school.
[Laughs] “Well I’m pretty old now. But yeah, time flies.”
You’ve been in the game industry for awhile. Can you give a list of some of the titles you’ve shipped in your career?
“Sure, the first title was NBA Live 99 for N64 followed by NBA Live 2000. After that I worked on the first NBA Street on PS2. Then I worked at Visual Concepts on NBA 2K2-2K4. I wanted to get away from basketball games so then I started at EA working on The Godfather, The Simpsons Game and a little bit on Dead Space early on.”
Were you fearful you may be “typecast” as the basketball programmer?
“Yeah, that was for sure happening. It was a bit difficult to make the transition out of basketball games, since different type of games have different challenges.”
You just started working at Unity recently. Can you describe what your typical work day is like there?
“Well the Spotlight Team was created to help external Unity developers enhance their games. So a typical day would be working towards implementing features to help these devs and maybe even features that can make it to the asset store or back into the stock engine.”
Let’s jump back a bit. Get a bit of your history. Where did you grow up?
“I grew up in Toronto, Ontario Canada; Specifically, Scarborough.”
When did you first get introduced to computers?
“I was around 8 years old. My mother bought me my first computer. That was the IBM PCjr. My mom was a programmer at IBM so she wanted to get me a computer to do my school work. I think I used it more for games.”
“Most important thing is to slow down and take a look at a problem calmly.”
Wow, a parent who was a programmer! Did she teach you how to code a bit?
“Actually no. She did buy books and send me to computer camp later on. But the primary reason I got the computer was for school work. I don’t think it occurred to her that early.”
Did your mother support or understand your interesting in game development?
Like most parents, I imagine.
“It’s an interesting story. when I was graduating from university I had a job offer to work at IBM. I think it was on Visualage C++. Kind of a Visual programming IDE. But I really wanted to work on games. So I applied to a bunch of different game companies and got rejected pretty much everywhere.”
“I saw a job posting for a job in Chicago and applied. When I got the offer my mother wasn’t too pleased about me not going with the more ‘stable’ company.”
“I think she saw it as me wasting my degree to work on toys.”
“It was the company formerly known as NuFX before it got purchased by EA and renamed to EA Chicago.”
So, did you “convince” your mom this was the right move for you? How did that resolve?
“I think I convinced her to let me make the decision. I think she probably was still worried about it for sure but she supported me all the way. I was pretty passionate about it.”
“She also came down and saw the studio when I was working there. It was pretty funny that the bosses rolled out the red carpet for her. They treated her better than the employees for sure.”
Always got to respect “mama”.
So, it seems it quelled her concerns enough. So, did you go to school for a more formal training into programming? You did end up going to a university. What did you get your degree in?
“I didn’t get more formal training until high school. I took a class that taught some of the principles using the Turing programming language.”
“I got a BMATH in Computer Science with a minor in Combinatorics and Optimization.”
“Combinatorics is kinda useful in some aspects of game development.”
You’ve been a professional in the game industry for how many years?
“17 years now.”
So, in your 17 years, what skills do think are key to your continued success in the industry?
“For me personally, I think my intelligence and ability to not get completely flustered when the pressure is on. Most important thing is to slow down and take a look at a problem calmly.”
I find most conflicts in the game industry result from a sense of pressure from somewhere. Schedule, executives, supervisors…etc.
“Yeah for sure. I think it’s all time. When money is on the line you have to spend the minimum amount of it to get the game done, so schedule and time become really important. But games are also very creative. Most of the time you can’t schedule the creativity, thus the conflict.”
Creativity is the hardest thing to time box. Good ideas don’t always come when you want, but making decisions is important to keep a project on track.
“Yeah sometimes good ideas come from pure accident too.”
“Well, being a programmer, the one tool I can’t live without is Visual SlickEdit.”
So, looking back, would you have done anything differently? Studied something different in school? Used a different programming technique for a project?
“I think all of the decisions I’ve made from going away to school, to moving to Chicago, were all pretty risky at the time but I would never have changed them. The only thing I probably do regret was not making more games while I was in school and really getting involved in the process earlier. Back in that time it was pretty hard to make something and there were very few tools.”
I feel the same way.
“Now, kids in school have no shortage of tools that make game dev a lot easier. Unity being one of them.”
So, are there any specific tools or plugins you like to use in your work?
“Well, being a programmer, the one tool I can’t live without is Visual SlickEdit. Which is a code editor. Basically, does everything that I need it to do to get my work done.”
What trait or skill is most important in your area of expertise?
“Being able to see a problem and break it down to it’s base pieces and find solutions that match the constraints you are dealing with.”
If you had infinite time/funds, what sort of game would you make?
“Turn based game like X-COM probably with some sort of IP as the skin. Maybe G.I. Joe.”
X-COM is a crowd favorite. Somewhat niche. G.I. Joe brings it into the mainstream. Very nice. The game industry, and tech industry in general, is constantly changing and evolving, there are always new trends popping up. What interests you right now? What do you see as the next big thing?
“I don’t even know, man. That’s the thing, there are always trends popping up. These trends are always used to try and energize the player base. I would say what about FUN? I just want to play interesting games that keep evolving as you play and are fun. If that’s VR, AR or whatever is next, just make it fun.”
Fun and innovation are hard. Hard to predictably create on a regular clip.
“Yup. Game dev is hard period. We have some indicators that give us our best guess. Like open world games are open world cause a lot of players love that level of breadth.”
So, if I were a young student, about to graduate and I said, I want to be a graphic programmer, what advice would you give me? Specific shader techniques to study? Any areas I should concentrate on?
“The advice would be to study everything related to it. Start at the foundation and work up.”
“Right now PBR(Physically Based Rendering) is the buzzword of choice. But it’s a huge area to study with a lot of foundational work and technical papers so read all of them.”
“Mess around with your own graphics test bed and try different techniques.”
Any particular websites or resources you like to use?
“Well, I think the SIGGRAPH talks are always good.”
Any parting thoughts? Consider this your 15 seconds of internet fame. What would you like to share?
“I really don’t know what else to say. But the most important thing to me in relation to the game industry is to just make something FUN.”
Is there a way for our readers to reach you for additional questions? Twitter? Instagram? Snapchat?
“I don’t even know how to use Snapchat….But I am available on twitter at @wadarass”
Ray, thank you for your time. This was great.