Программист
Программист использует такие языки, как C#, C++, HTML или Python, а также игровые движки, например Unity или Unreal, и создает код, который позволяет игроку взаимодействовать с игрой. Он программирует систему камер, физику, искусственный интеллект (ИИ), заставляет оружие работать как задумано и так далее. Программисты могут решать множество задач. Но не всегда все программисты в команде трудятся над одним аспектом игры. Иногда один работает только над созданием инструментов, которые помогут команде сделать игру качественнее. Другой пишет код, моделирующий физику создаваемого мира, например водоемы или погоду. Третий может заниматься только звуком. Вы когда-нибудь думали в школе, нужно ли понимать алгебру и зачем вообще вам математика? Что ж, программисты должны отлично разбираться в математике, 2D- и 3D-графике, физике, системах частиц, дизайне интерфейсов, устройствах ввода (клавиатурах, контроллерах) и компьютерных сетях. Они всегда востребованны, и некоторые программисты неплохо зарабатывают, будучи как фрилансерами, так и штатными сотрудниками. Их спектр деятельности очень широк – от написания кода до предоставления готовых решений командам.
Художники
В самом начале эпохи разработки видеоигр их художественным оформлением занимались программисты. В некотором смысле они до сих пор создают арт-элементы для игр, но уже в виде простых фигур. Это называется Coder Art. Обычно это временные объекты, существующие, пока художники и моделлеры не создадут полноценные ассеты[6] игры. Сегодня именно художники отвечают за эту работу.
Одним из первых художников, создававших оформление для видеоигр, был Сигэру Миямото (Shigeru Miyamoto), который разработал Super Mario и Donkey Kong. С тех пор простые образы этих персонажей стали известны по всему миру. Он создавал их на 8-битных процессорах, используя 2-битные пиксели. Это значит, что фоновые элементы имели всего четыре цвета, а ассеты – два. По мере развития технологии новое продвинутое аппаратное обеспечение, с большей памятью, глубиной цвета и способностью отображать более качественную графику, позволило художникам создавать детализированные и углубленные фоны, объекты, персонажей и так далее. Все это привело к появлению фотореалистичных игр, таких как Uncharted 4: A Thief’s End и The Last Of Us Part 2.
Как и программирование, гейм-арт выделился в отдельную специальность. Это привело к тому, что у художников появились специализации:
• Концепт-художник использует для оформления игры традиционные средства и компьютеры, создавая персонажей, миры, врагов и объекты. Тем не менее концепт-арт служит лишь в качестве ориентира для других художников и в конечный продукт не попадает.
• Художники-раскадровщики прорисовывают синематику и иногда элементы геймплея, которые передаются другим художникам и видеоаниматорам.
• 3D-моделлеры и художники окружения с помощью таких программ, как Maya, Blender, MagicaVoxel и прочих, создают окружение и персонажей. Затем модели передаются художникам по текстурам, которые оформляют поверхности объектов и локаций, создавая эффект реалистичности. Художники VFX (visual effects) создают визуальные эффекты, используя 2D- и 3D-графику.
Помимо этого, в разработке игры участвуют дизайнеры пользовательского интерфейса, художники-аниматоры и многие другие специалисты. Начинаете понемногу понимать, как все происходит?..
Дизайнеры
Дизайнеры должны обладать множеством навыков, в частности уметь отличать хорошую игру от плохой и объяснять эти отличия. Но самое главное, они должны любить игры. Как и художники, дизайнеры бывают разными:
• Дизайнеры уровней добавляют на уровни элементы, такие как противники и сокровища. Они также отвечают за то, чтобы игра получалась интуитивной для игрока и он мог использовать приобретенные механики и навыки. И даже если сам игровой мир выглядит скучно, дизайнеры уровней сделают путешествие по нему полным фана и креатива.
• Дизайнеры систем разрабатывают принципы, по которым элементы игры взаимодействуют друг с другом. Это все элементы игры – от игровой валюты до деревьев навыков. Все детали игры должны работать слаженно, как в двигателе автомобиля, за что и отвечают дизайнеры систем.
6
Ассет (asset) – набор ресурсов в игре (готовые программные модули, модели, анимации, звуки и так далее). См. также таблицу 2.1 в конце главы 2. –