day in the life
We know great things happen when talent and opportunity cross paths.
Nenad Stojanovic
Game Developer
Can you discuss your experience being a game developer?
Being a game developer differs from being a regular software developer. I personally started to realize that from the earliest days of my career when all of my friends from college would meet shortly after we all got jobs. We would sit down and chat about how it was in the new environments that we ended up in, and even though they were working in different technologies and different companies, they would understand each other and what they were saying, while I was sitting there listening to them and feeding my ever-growing imposter syndrome. But then I realized that things that I know and encounter on a daily basis are something that they have never heard of and cannot grasp.
You can make a web service that schedules women’s hair salon appointments even though you are a man and haven’t set foot inside a beauty salon ever in your life. But you cannot make a game if you have never played a game. You have to understand, feel and live game development, it is not something you can only do. I personally think that people who only do game development for the sake of money (if they even exist) are suffering a lot.
In your experience, how does development differ between different platforms, such as console, mobile, and PC?
It differs in the same way that a bicycle, car, train, and plane differ. They are all transportation vehicles, one can do what the other cannot, and vice versa.
There are three main things that you should ask – who, what, and why? Who is playing your game? A person might love riding a bicycle but is scared of flying. We have to keep that in mind. A mobile phone player may never touch a PC for gaming purposes, so a game developer must understand that.
What are you making? Creating a high-definition realistic game is easy stuff on a PC where you have heaps of processing power that can eat up millions of polygons, but doing the same on a mobile phone would reward you with 2 FPS if you’re lucky and even with the latest iPhone on the market. Playing multiplayer sports games may feel good on PC, but it is a totally different experience sitting next to your friends with a console controller in your hand that gives you haptic feedback.
Why are people going to play your game? You cannot play a console game while you’re waiting in queue for the doctor’s office, but you can play a mobile one. In the same way, you cannot cram 4 of your friends at the same time in front of a mobile phone to play Madden NFL. You don’t have eSports for Flappy Bird, but you have for DoTA. Creating different types of games requires a totally different mindset.
But what is common for any platform that you might develop is that you have to know your end player, and the best scenario is to be your end player!
Can you tell me about some of the most important technical considerations when developing games?
Optimization would be the trickiest part and an area where you can always learn something new. Also, it is an umbrella term that defines many things both on the CPU and GPU end and even beyond. I personally think you can always optimize a game a bit more, and that is never a bad thing.
What tools, software, and programming languages are used in game development?
Two of the most popular and used game engines are Unity and Unreal, but you also have GameMaker, Godot, and many others. As far as programming languages go, C++ seems to be the norm, even though C# is used in Unity, it is compiled to C++ in the end, but the use of JavaScript and even HTML5 is nothing strange either. Also, AAA studios a lot of the time develop specific engines for their requirements. Besides a game engine, you have to use 2D software like Adobe Photoshop or Adobe Illustrator, Gimp, or Vectr to name a few, or if you’re making a 3D game something like Blender, Maya or AutoCad would be your weapon of choice. For incorporating sound one would choose Wwise, Fabric, or FMOD. The good thing is that for a lot of these needs, Unity has something called Asset Store where you can purchase the assets you might require.
What kind of skills and knowledge are needed to create world-class gaming experiences?
The most important trait that I think one should have to develop a good game is a thirst for knowledge of any kind. Games are a very versatile thing, a living organism, a simulated world. So you have to keep up with them, but not only at the front of games. Games being entertainment, you have to know that your players want to be entertained, so you need to look into films, music, arts, and all the different scopes of everyday life. Games are all around us, it is our mission as game developers to recognize them.
Can you tell me about how the game development industry has evolved in terms of technology, and where you see it going in the future?
It is becoming increasingly easier to create games with the help of modern game engines that hold you by the hand and guide you through some of the hardest parts of game development. That became and will stay a norm. There are multiple instances where ‘no code’ development of games was attempted and even succeeded, but in my personal opinion that is good for an enthusiast level. For anything serious, you have to roll up your sleeves and start programming. Also, the surfacing of ever-growing AI in recent months has caused concerns in tech circles, including the gaming industry. But I’m not too afraid of it, AI is good at replicating and improving the data that it already has, but as we all know – you can’t copy fun!
Can you tell me what it’s like working at Starloop Studios and Magic Media?
I personally never had the experience to work in such a big environment where I could reach out for help from my colleagues in any field imaginable related to game development, and beyond. Everyone is very helpful, proactive, and friendly, which is the most important aspect of a community. Many companies spend millions of dollars on creating a company culture and cohesion, but somehow Starloop and Magic Media pulled that off effortlessly, or so it seems. Every day I join 20+ teammates of mine from all across the globe, and even though I have never met the majority of them, I regard them as my friends, we work together, and we talk about many topics both related to work and to our private lives, we help each other whenever we can. It really helps alleviate the stress that might occur in the regular work environment.