Computer game development. Who actually makes computer games?

Mateusz Kietlinski
Calendar icon
27 czerwca 2019

Probably all of you have had exposure to computer games at some point. From joining diamonds in threes on your phone screen, to gripping races with a pad in hand, to riding a rollercoaster with a VR headset on your head. The value of the gaming market grew dynamically in 2018, reaching $135 billion, an improvement of about 11 percentage points over the previous year. The modern world is slowly embracing computer games as the new "provider" of entertainment. We can find more and more online articles about games, streaming sites that allow us to watch other people play our favorite games or e-sports galas. Computer games are no longer just a luxury good, designed for a handful of enthusiasts with an Atari console in the living room. They have become a new entertainment, designed for a mass audience, and their creation has begun to be treated like show business.

Developing a game differs from developing utility applications in several aspects. Looking at it from a simple point of view, both a game and an application have their logic described by code whose representation appears on the user's screen. Games, however, in addition to this, have emotions in the message they broadcast. Whether it be a feeling of triumph over a defeated opponent, or satisfaction from a solved puzzle, or perhaps sadness at the loss of a companion who was with us from the beginning of the storyline. The game does not take place inside the processor, or even on the screen; the real game can be experienced only in the head of the person who holds the controller.

Computer games are works that combine many elements of aesthetics. In addition to the obvious ones, such as code, soundtrack and visuals, there are also the designs of mechanics, levels or character animations. Creating a game experience requires the combined work of many people, often vastly different from each other. In teams we will meet both people with scientific and humanistic minds, who need to be able to communicate with each other, communicate their visions and insights to create a good product as a result. Many developers begin their careers alone, trying to create all the necessary elements by themselves. This is as feasible as possible, and we know of astronomical cases of titles such as "Stardew Valley" that have been hugely successful despite being created as a result of the work of a single person. Here, however, we will focus on working as part of a larger team to get a better idea of the processes at professional game dev companies. Before setting out, it's important to assemble a team.

Game Designer - the one through whom you remember the game forever

Let's start with the game designer. At the very beginning, we need to get rid of the most common misconception about this role, which is "the idea man." Every person on the team has ideas. If you were to come up with an idea for a game right now, it would probably be born in your head after a maximum of 60 seconds. Ideas are just a multiplier of the value of making a project. The goal of the designer is to evaluate and implement the idea as quickly as possible.

| | | | | |------------------|----|---------------------|-------------| | Zły pomysł | -1 | Brak wykonania | $1 | | Słaby pomysł | 1 | Słabe wykonanie | $1.000 | | Średni pomysł | 5 | Średnie wykonanie | $10.000 | | Dobry pomysł | 10 | Dobre wykonanie | $100.000 | | Świetny pomysł | 15 | Świetne wykonanie | $1.000.000 | | Znakomity pomysł | 20 | Znakomite wykonanie | $10.000.000 |

Example from the book "Anything You Want" by Derek Sivers.

To find out the value of the product, multiply the value of the idea with the value of the execution. For example, an excellent idea but without execution will be worth $20, while an excellent idea with great execution will be worth $20,000,000. Therefore, ideas by themselves are worth nothing until we can see the quality of their execution.

Now that we know that a designer is not in charge of coming up with ideas, what then does he do? The job of such a person is to prototype the mechanics that appear in the game. This usually involves rapid implementation of new functionality, and testing on other team members to gather feedback. The designer himself is the last person who should test his idea. He knows how the tested mechanics should work, which means he doesn't see the errors that may exist in it. Another task of such a person is to create levels (Level Design) - so that the player can learn new mechanics in a natural way or test the skills he learned before. The designer is also responsible for the balance of gameplay. We're not just talking about making sure the numbers in Excel match, but also ensuring the correct pace of gameplay (Pacing). The player should experience moments of high pacing, but also moments of respite and rest. Sometimes designers are also responsible for the game's monetization balance. This mainly applies to mobile or free-to-play games, where designers control the prices of items, simulate player spending and adjust the prices of in-app purchases, also known as micropayments.

fig1.webp

Graphic designer, or rather a whole army of graphic designers

Let's now talk about the graphic designers who participate in the production of computer games. It will be easiest for us to discuss their role by breaking down the tasks they deal with, and contrary to appearances, it is not just creating graphics. Work on game elements begins on the desk of the concept artist (Concept Artist), who sketches a vision of a given object or character based on the information prepared by designers. Thanks to this procedure, it is easy to visually assess whether a given object will fit into the game world or not. After approval by the project's chief art director, the concepts go to a modeler (3D artist) or illustrator (2D artist), depending on what type of object we want to make. The modeler's job is to create a three-dimensional model. To do this, a sculpting technique is used, which in part resembles sculpting with clay. Such an artist must keep in mind the complexity of his model, as the games must be displayed on the screen in real time, preferably at 60 frames per second. The more complex the model (it consists of more triangles), the more time it will take the graphics card to draw it. An illustrator, on the other hand, has no such limitations, his work consists of preparing two-dimensional elements, such as fragments of the user interface or drawings of characters appearing in the game. The work of such a graphic designer can be simplified to compare to physical painting with a brush on a canvas.

fig2.webp

Concept art of the character "Atreus" for the game "God of War".

The next graphic designer we will meet on the path to the finished model is a rigger. His task is to prepare a three-dimensional model for animation. This involves arranging the skeleton inside the model and assigning surface elements to individual bones. This way, when we move a bone, the triangles assigned to it will also make a move. The model prepared in this way goes to the animator, who sets it in motion. The animator moves the limbs and records their position in keyframes (key points) for the animation. Once all the keys are set along the length of the animation, we will see the finished effect (such as a moving character) ready to be placed in the game. We also can't forget about the technical artists (technical artists) who are responsible for creating special effects. If our character were to wield a flaming blade, it would be this graphic artist who would prepare the particle effects of the flames and smoke that this weapon leaves behind.

fig3.webp

The skeleton of the character "Geralt" from the game "The Witcher 3"

Sound designer - decides what you will hear

Once the visuals are in place for our game, it's time to get down to its sound design. Creating music and sound effects for games is a little different from working on movies. When editing a movie, we know every moment when a certain sound will play and we know in which scene what the music will be. Games are controlled by the player - he decides what will happen at any given moment, and the effects and music should respond to that. The sound designer will therefore have several additional tasks to perform. In addition to preparing sound effects for each interaction and music for situations happening in the game world, he will also be responsible for blending these sounds (blending) in an appropriate way.

Blending sounds in games involves assigning appropriate priorities to actions so that those sounds that are more important at the moment are played loudly, and those that are less important disappear into the noise or are turned off completely. The golden rule is to look at the priority of the action, estimating how much impact it will have on the player. The sound of footsteps of passersby all around has little impact on gameplay, while a thug pulling a gun out of his holster is a real threat to the main character, so the sound engineer should be sure the player can hear him. This effect can be observed in the game "GTA V". Using the example above - the sound of drawing a gun from a holster is almost inaudible in the real world, while in the game it rises above honking cars.

The manufacturer makes sure we're going the right way

We already know how many disparate people are involved in the development of a computer game. So how do we get the whole process under control? We must look to the producer for the answer. I would like to get rid of a misconception that many people have about this position: the producer does not manage the team. Management is the responsibility of team leaders, who know how their team works best, know the technologies they use and know how to distribute people so that tasks are completed on time. The producer is responsible for creating the path that the project follows, so that it meets the set objectives as much as possible. If the game is made for an external client, the producer makes sure that the product agrees with the approved vision, and if it is made internally, that it is created according to the production plan.

To organize the development of games, as well as utility applications, project management methodologies (such as SCRUM) work best. Referring to this methodology, one can compare the producer to a SCRUM master, whose role is to select tasks so that the project follows the set deadlines, but he is no longer concerned about how the selected tasks will be completed. That already remains with the team.

The tester will make sure that the game works more often rather than less often

If we had to point out the biggest common part between computer games and utility applications, it would certainly be the bugs that occur in them. A team that has been working on its production for a long time has a set pattern in how they use it. When they start doing things in a way not anticipated by the designer, or in an unusual order, they can encounter quite a few shortcomings. The person who tries to "spoil" the emerging game will be the tester ( Quality Assurance ).

There are several types of tests that are used for games. The most popular of these would be Sanity Tests. They involve a cursory review of systems, checking whether they function as expected. More specific tests will be, for example, Compatibility Tests ( Compatibility Testing ), whose task is, among other things, to check whether the user will lose his or her progress after updating the game. Regression Testing ( Regression Testing ) involves repeating previous tests on functionality that has already been tested to make sure it hasn't stopped working as it should. Localization Testing ( Localization Testing ) is also very important, during which texts appearing in the game in all language versions are checked to see if they fit in the spaces designated for them.

fig4.webp

"Asana", an example of a program used for bug tracking.

Programmer, that is, the one who looks with horror at what the designers have come up with

What a programmer does rather everyone is able to guess. He creates the part of the game that you can't see at first glance, but makes everything come together into a functional whole. So let's try to divide the programmers working on games to better understand what exactly is created thanks to them.When we think of a game, we see gameplay in it. Everything that flies, shoots or jumps on the screen was created by a gameplay programmer (gameplay programmer). These programmers spend the most designer time during their daily work. They make sure that the mechanics either work as intended or can be modified and adjusted on an ongoing basis according to the current state of the game and the feedback collected.

As the game becomes elaborate, the number of small changes and balancing elements increases dramatically. The need arises for designers to be able to quickly edit the configuration of the game world, preferably without the help of a programmer. The Tool Programmer is responsible for preparing special editors for designers so that they can intuitively test successive iterations of gameplay balance without constant interference with the game code.

In order to speed up production, programmers began to create so-called computer game engines. We can think of them as a collection of tools that allow us to create a finished product faster and easier. However, many companies that professionally create games choose to work with a proprietary engine. In this case, an engine programmer (Engine Programmer) is needed. His task is to maintain and expand the tool so that it can perform the tasks envisaged by the designers, support the latest technologies and operate in an optimal way.

fig5.webp

Game development engine "Unity".

The last role I will mention is the developer of the server part (back-end developer), who is responsible for the ability to play with friends over the Internet. His task is also to handle databases, so that the progress of our gameplay is safe and can be easily transferred between devices. In simple terms - the area of his work is very similar to programmers responsible for utility applications - in particular, websites. A bigger difference appears only when handling real-time gameplay, which must be synchronized between all players all the time.

Is it worth making computer games?

Game development is my favorite career path in IT. It allows you to collaborate with interesting people from different fields, learn about other cultures and struggle with challenges that vary from day to day. If I had to list the advantages, I would definitely put the variety of tasks we will face in the first place. In addition, the moment when we can watch a YouTube video of people we don't know having fun with our game is irreplaceable.

Read also

Calendar icon

27 wrzesień

Omega-PSIR and the Employee Assessment System at the Warsaw School of Economics

Implementation of Omega-PSIR and the Employee Evaluation System at SGH. See how our solutions support university management and resea...

Calendar icon

12 wrzesień

Playwright vs Cypress vs Selenium: which is better?

Playwright, Selenium or Cypress? Discover the key differences and advantages of each of these web application test automation tools. ...

Calendar icon

22 sierpień

A new era of knowledge management: Omega-PSIR at Kozminski University

Kozminski University in Warsaw, one of the leading universities in Poland, has been using the Omega-PSIR system we have implemented t...