Как создать персонажа для игры
Перейти к содержимому

Как создать персонажа для игры

  • автор:

Как создать хороших персонажей для игры

Разбираемся, почему персонажи в играх отличаются от персонажей в книгах и фильмах и как это влияет на геймдизайн.

Евгений Кучерявый

Евгений Кучерявый

Пишет о программировании, в свободное время создаёт игры. Мечтает открыть свою студию и выпускать ламповые RPG.

Каждой хорошей истории нужны хорошие персонажи. И хотя у нас может быть масса идей о том, каких персонажей мы создадим, на практике всё гораздо сложнее. Игр это касается очень сильно, потому что в них связь персонажа с игроком должна быть максимальной.

Когда персонажи не нужны

Для начала отбросим все игры, в которых некого одушевлять, — тетрис, шахматы, домино, кости или что-то вроде Ballance:

Речь пойдёт об играх, где есть живые существа. Так, например, персонажа можно не прорабатывать в «песочницах» — играх, в которых можно хорошо провести время и без сюжета.

В «песочницах» игроки сами выбирают, чем заняться, и поэтому им попросту не нужно себя ни с кем ассоциировать. Например, многие игроки в Minecraft не знают, что персонажей зовут Стив и Алекс. Разве это хоть на что-нибудь влияет?

Более того, игроки могут загрузить любые скины, которые захотят.

То же самое касается и других «песочниц». Например, в детстве я мог часами играть в GTA: Vice City и San Andreas. И хотя в этих играх есть сюжет, мне это было неважно — я создавал свой.

Если же у вас есть идеи для хорошей истории, то нужно позаботиться о персонажах.

Каким должен быть любой персонаж

Что мы знаем о персонажах? Что у них должна быть мотивация, характер и химия:

  • Мотивация делает существование персонажа осмысленным.

  • Характер выделяет его на фоне других персонажей или на фоне картона (если персонаж плохо проработан, его называют картонным).

  • Химия(отношения с другими персонажами) делает его частью истории.

Всё это касается как фильмов и книг, так и игр. Хотя в них всё немного по-другому. Из этих компонентов можно сделать отличного компаньона или антагониста (противник главного персонажа), но если мы попробуем сделать слишком проработанного протагониста (центральное действующее лицо), то игрокам будет сложно себя с ним ассоциировать.

Всё дело в свободе действий. Представьте, что во время кат-сцены главный персонаж говорит, что он не убийца и не будет никого убивать. Если вы играете так, как задумано разработчиками, то вам понравится, что у персонажа есть убеждения. Если же до этого вы успели убить несколько десятков NPC, то слова протагониста покажутся ложью и лицемерием.

С фильмами и книгами проще, потому что мы не можем влиять на развитие событий, поэтому такого диссонанса не происходит. Также в неинтерактивных произведениях мы можем ассоциировать себя не с главным персонажем, а с кем-нибудь из второстепенных, — в играх это невозможно.

Решить эту проблему можно несколькими способами: создать такого персонажа, с которым почти все смогут себя ассоциировать, или дать волю игрокам.

Персонаж, созданный разработчиками

Что связывает Гордона Фримена, Нейтана Дрейка, Агента 47 и капитана Шепарда? Во-первых, это известные и любимые многими персонажи. Во-вторых, у них нет ярко выраженной индивидуальности.

Гордон Фримен, например, никогда и ничего не говорит. Ну, почти.

Как написать персонажа для игры: базовые шаги

Рассказываем о деталях, которые продумывают на первом этапе создания сценария.

Иллюстрация: Катя Павловская для Skillbox Media

Дмитрий Землянкин

Дмитрий Землянкин

Сценарист и копирайтер. Утверждает, что видел все фильмы и прошёл все игры, но редакция отказывается ему верить.

Дарья Логинова

Дарья Логинова

Редактор направления «Геймдев» Skillbox Media. Любит инди-игры и застревать в текстурах, ветеран The Binding of Isaac.

Персонажи в видеоиграх — центральный элемент повествования. Внимание чаще всего концентрируется на них. Игрок ассоциирует себя с главным героем, враги развивают сюжет, а дружелюбные NPC выступают одним из главных элементов окружающего мира.

Редакция Skillbox Media решила собрать небольшой список шагов, через которые проходит любой персонаж в самом начале разработки. В подготовке нам помог нарративный дизайнер из Banzai.Games Виталий Алексашин. Речь пойдёт о нарративной составляющей — а про разработку дизайна персонажей можно прочитать в другой нашей статье.

Тип персонажа

Перед тем как перейти к детальному развитию героя, необходимо проделать базовые шаги. Сперва определитесь с типом героя в зависимости от того, какую функцию он будет выполнять в игре:

  • играбельный / неиграбельный;
  • друг / враг / нейтральный;
  • созданный дизайнером / созданный игроком.

Неиграбельные персонажи (NPC) делятся на несколько категорий:

  • Враги: рядовые, мини-боссы и боссы.
  • Союзники: NPC, которые помогают игроку, сопровождают его.
  • Дополнительные: NPC, работающие на повествование и создающие атмосферу. Они могут, например, реагировать на определённые события и давать квесты, раскрывающие лор игры.

Зная тип персонажа, сценарист может заранее определить, сколько времени и внимания стоит отвести герою, какие функции он будет выполнять.

«Персонаж в игре иногда просто инструмент, которым пользуется сценарист, чтобы донести конкретную мысль до игрока. То есть создание персонажа нужно начать с вопроса „Что он в себе несёт?“ Иногда герои игр — персонифицированное высказывание автора на какую-то конкретную тему. И тогда в дело вступают сюжетные тропы — например, спасение принцессы рыцарем. Автор исследует, что мотивирует персонажа в рамках конкретного тропа. Всегда проще сфокусировать свою мысль через конкретную ситуацию, которая игрокам уже хорошо известна и понятна».

Виталий Алексашин,
нарративный дизайнер в Banzai.Games

Краткая предыстория

Следующий шаг — обозначить небольшую предысторию и особенности героя. Для этого стоит ответить на несколько общих вопросов:

  • Откуда он пришёл?
  • Каким было его прошлое?
  • Во что он верит?
  • В чём его особенности?
  • Что им руководит и какая у него мотивация?
  • Какие у него отношения с другими героями?
  • Как игрок встретится с персонажем?
  • К чему приведёт эта встреча?

Эта информация помогает лучше определить место персонажа в мире и сюжете, детально продумать его функции и реакцию на происходящие события.

Ключевые черты характера

Некоторые черты характера диктует предыстория, другие порой зависят от функции персонажа в сюжете. Человек, выросший в тяжёлых условиях, может быть неустойчивым и недоверчивым, единственный ребёнок в богатой семье — изнеженным и самоуверенным, глубоко верующий — праведным или нетерпимым. Каждой культуре, так же как разным эпохам и слоям общества, присущ свой менталитет. Внутренний конфликт подразумевает взаимоисключающие особенности, а гармония — умение с ними мириться.

Что касается функций, то главный герой чаще лучше проработан с точки зрения характера, поскольку он — двигатель сюжета, а вот NPC может обладать небольшим набором черт. Враги не обязательно должны быть злодеями на сто процентов, без единой индивидуальной особенности, кроме непреодолимого желания уничтожить протагониста, — наоборот. Их неоднозначность добавляет сюжету глубины — но на первый план будут выступать скорее отрицательные черты.

В свою очередь, заданный характер диктует развитие дальнейших событий, ему должны соответствовать реакции и действия персонажа. Трусливый герой не может безрассудно броситься в пекло без веской мотивации и внутренних сомнений, честный — не сможет солгать о чём-то без угрызений совести, даже если это ложь во благо, а милосердный с большой вероятностью пощадит безоружного врага. Именно поэтому важно очертить ключевые особенности персонажей в самом начале — иначе в сценарий могут закрасться критические логические ошибки.

Выбор имени

Не все имена обязательно должны иметь подтекст, но скрытые отсылки и значения или игра слов порой не только лучше раскрывают персонажей, но и просто доставляют игрокам удовольствие при расшифровке.

«Подбор имени — это всегда брейнсторм. Вы можете оттолкнуться:

  • от тематики проекта;
  • от характеристик героя: например, ниндзя по кличке Рысь — быстрый, молниеносный, ловкий;
  • от выбранного для персонажа референса — бандит по прозвищу Геродот или Философ может грабить и сыпать цитатами в процессе;
  • от черт его характера — если мы встречаем персонажа по имени Лютик, то это явно не брутал и не боец.

Говорящие имена — отличная штука. Они сообщают нам о персонаже больше, чем тонны реплик, которые мы от него услышим».

Виталий Алексашин,
нарративный дизайнер Banzai.Games

У персонажей есть ещё одна важная характеристика — архетип. Как правило, суть любого героя можно свести к обобщённому образу — воителя, путешественника, вора, мудреца, лучшего друга. Одни более распространены в литературе, фильмах и играх, другие — менее, но эти образы всегда подсознательно угадываются.

По определению Карла Юнга, архетипы — это врождённые образы, с которыми знаком каждый человек в мире; они являются выражением коллективного бессознательного и сформировались много веков назад. В художественных произведениях архетипы персонажей используют для того, чтобы создавать узнаваемых и целостных героев, правильнее определять для них функции в сюжете, на которые следует сделать упор, — иначе можно потерять нить повествования и не донести до аудитории главную мысль.

Если архетип не определили заранее, то после четырёх базовых шагов, описанных выше, он очертится сам собой — характер и функции подскажут, в каком направлении смотреть. Безжалостный антагонист вроде Вааса Монтенегро из Far Cry 3 не впишется в роль персоны; Лютика из вселенной «Ведьмака» едва ли можно представить в образе наставника; Лара Крофт не станет шутом.

Подробнее о ключевых архетипах мы рассказали в спецпроекте «Юнг поможет: разбираемся в архетипах персонажей», в который вошли самые узнаваемые образы:

Полный цикл создания модели персонажа для игры

Процесс создания in-game модели персонажа от эскиза до релиза.

image

Доброго времени суток. Меня зовут Ivan. Сегодня я поделюсь с вами деталями разработки игр, а именно расскажу о полном цикле создания персонажа. Итак, поехали!

Этап 1 — Концепты и дизайн

Как и в любом другом деле, начинать следует с идеи, которую нам необходимо выразить в концептах. Это важный этап, который будет фундаментом для всей дальнейшей работы. На самом деле не так важно, какого качество будут эскизы (да-да, я имею ввиду себя) главное, чтобы они были. Потому что эскиз это план, следуя которому вы сэкономите уйму времени и нервов. Имея эскиз, вы будете четко представлять финальный результат и шаги, которые необходимы для его реализации. Как говорится «Кораблю, который не знает куда плыть, никакой ветер не будет попутным».

image

Этап 2 — Скульптинг high poly модели

Вам потребуется задействовать все имеющиеся знания и навыки, чтобы вылепить вашего персонажа, не жалея полигонов. Главная задача — создать максимально детализированную модель. Потому что, на следующих этапах, внести какую либо детализацию будет проблематично. Для этой задачи прекрасно подойдет ZBrush или Sculptris. Если модель не сильно сложная, я предпочитаю использовать Sculptris, так как в нем крайне аскетичный интерфейс и есть возможность создания динамической топологии.

image

image

Этап 3 — Ретопология

Завершив работу над high poly моделью, можно смело приступать к ее оптимизации, потому что в том виде, в котором находится модель сейчас, использование в игре крайне не рационально. Вряд ли найдется тот смельчак, который отважился бы заскинить модель в 20 миллионов полигонов и с абсолютно хаотичной сеткой. Поэтому мы приступаем к процессу ретопологии, основной сутью которого является уменьшение количество полигонов до оптимального и построения правильной сетки пригодной для анимации. Ретопологию можно делать как в стороннем софте, так и в 3D Max с помощью инструмента PolyDraw. Собственно к этому и приступаем. Стараемся строить топологию используя «лупы» (loop, с англ. — петля, виток) в местах сгибов, это облегчит дальнейший скиннинг и обеспечит анимациям более естественный вид.

image

image

Этап 4 — Развертка

Далее мы приступаем к развертке. Нам необходимо развернуть все части меша, чтобы текстура корректно легла на модель. Если какая-то часть модели нуждается в большей детализации, то ей можно выделить больше места на развертке. При создании развертки следует стараться прятать швы в менее заметных местах, таких как — внутренняя сторона руки, подмышка и т.д. Для создания развертки используем стандартный набор инструментов 3D Max’a.

image

Этап 5 — Запекание карт

Чтобы перенести детализацию с high poly модели на low poly модель, используются текстурные карты, такие как Normal Map, Ambient Occlusion и другие. К счастью их создание происходит полностью автоматически. Для запекания карт прекрасно подойдет Substance Painter. Экспортируем отдельно high poly и low poly модели и импортируем все это в SP. Запекание осуществляется парой кликов мышью, вручную ничего делать не нужно. Максимум, что может потребоваться, это подштриховать мелкие косячки на картах в Photoshop’e, но чаще всего это не требуется.

image

image

image

Этап 6 — Текстуринг

Приступаем к текстурированию нашей модели в Substance Painter. SP дает уникальную возможность красить прямо по модели. Для текстуринга можно использовать как готовые материалы, так и созданные вручную для каких либо нестандартных нужд, но чаще всего стандартного набора материалов SP будет достаточно. В очередной раз нам потребуется мобилизировать все наши навыки и знания. От этого будет зависеть качество полученного результата.

image

Этап 7 — Риггинг и скиннинг

Вот мы и добрались до заключительного этапа. Чтобы вдохнуть жизнь в нашего персонажа, нам нужно создать ему кости и прискинить к ним модель. Скининг — (от английского слова skin — кожа, skinning — процесс создания кожи, встречается также написание скиннинг) — это один из этапов сетапа 3D-персонажа, когда готовый скелет привязывается (скинится) к самой 3D-модели персонажа. В нашем случае это гуманоид, поэтому используем стандартный скелет CATRig. Подгоняем все кости под пропорции нашего персонажа и приступаем к скиннингу. Запасаемся терпением, это достаточно трудоемкий процесс, поскольку нужно правильно назначить вес (англ. weight) для каждой вершинки модели. Чем больше вес, тем больше влияет конкретная кость на конкретную вершину 3D-модели. Помните, чем правильнее топология вашей модели, тем проще и быстрее будет осуществляться скинниг.

image

Заключение

Только пройдя через все эти этапы, модель становиться пригодной для создания анимации и импортирования в движок, но это уже тема для следующего поста. Спасибо за внимание.

Dragon Bones: создание 2D персонажа и скелетная, mesh-анимация

Добрый день, читатель! В этой статье рассмотрим процесс разработки типичного персонажа нашей дебютной игры Kidarian Adventures. Я продемонстрирую свою привычную структуру работы, однако, заострю внимание на создании анимации в Dragon Bones, приложу пояснения и самописные видео-туториалы.

Текущая задача: Редизайн морально устаревшей модели стандартного летающего монстра полугодовой давности. Летучая мышь не успела за нашим скилом и стала не актуальной в рамках выбранного нами графического стиля.

image

Модель которую будем переделывать

Как минимум, задача у нас изначально слегка упрощена: не нужно искать концепцию для персонажа, но, тем не менее, работа будет производиться практически с нулевой точки.

Этап 1: Работа с референсами

Среди людей, производящих графический контент, ничего не берется на пустом месте. Никогда не верил тем людям, которые сидя на стуле кричат: “О вдохновение!”, и начинают малевать шедевры.

И этому есть самые простые объяснения: “Черт возьми, моя мышь такая дурацкая, потому что я даже не знаю как выглядят летучие мыши! Без референсов я нарисовал просто шарик с крыльями!”.

Итак, открываем гугл и начинаем “вдохновляться” настоящими летучими мышами, строением их туловища и мордочками. Разберем строение на примере:

image

Определяюсь с общими формами и пропорциями. Начинаю подмечать особенности строения и крепления крыльев. Крылья представляют из себя каркас с натянутыми перепонками. Имеются маленькие ножки и большие уши. И если с туловищем все понятно (хотя в предыдущей версии я умудрился нарисовать крылья вверх ногами), то с мордой у летучих мышей все куда сложнее, и зачастую выглядят они ну… не очень.

image

Этап 2: Наброски

После того как определили правильную анатомию, можно приступить к визуализации. Попробовал использовать разные формы туловища, придав им слегка более гротескный вид, на подобие летающих чертей или крупных зверей. В итоге, пришел к выводу использовать изначальный план с маленьким туловищем, лапками сзади и большими крыльями.

image

Несколько рабочих вариантов

Краткая выдержка из процесса

Этап 2: Отрисовка/Векторизация

После набросков и утверждения финального результата, я перехожу в Adobe Illustrator. Изображения отрисовываются в векторе — это позволяет всегда легко задать нужный размер без потери качества. Стоит отметить, что в результате я выгружаю растровое изображение в формате .png. В качестве дополнительных материалов для разных игровых уровней, летучая мышь будет иметь две цветовых схемы для разных уровней.

image

Этап 3. Анимация

Анимировать будем в Dragon Bones. Это бесплатный китайский аналог Spine, предоставляющий понятный интерфейс и возможности скелетной и mesh-анимации. Dragon bones распространяется бесплатно и его можно скачать с оф. сайта.

К сожалению сейчас комьюнити у данного ПО не слишком широкое, и даже на английском языке туториалов не много, в основном вся информация на китайском.

Первый шаг, который стоит сделать — разрезать модель таким образом, чтобы каждая подвижная деталь, была отдельно. Сохраняем картинки в формате .png и без фона.

image

После этого загружаем готовые .png в DragonBones, собираем согласно задумке. Необходимо также задать некоторые параметры. Draw order — это отображение по слоям, работающее по принципу слоев в фотошопе. Чем выше объект стоит в иерархии, тем выше он находится над другими слоями.(прим. первый в иерархии — самый дальний)

Сборка персонажа

image

Краткая выписка происходящего на видео выше

Далее нужно преобразовать объекты в mesh, чтобы появилась возможность изменять их форму так, как нам нужно. Для этого выделяем объект на сцене, слева ставим галочку напротив mesh, после этого нажимаем Edit mesh и начинаем отрисовывать сетку таким образом, чтобы изображения нигде не искажалось и не обрезалось. Особое внимание уделяем ребрам жесткости, таким как кости в крыле, которые будут сгибаться.

image

UPD. Для лучшей оптимизации в игровых движках, рекомендуется делать минимум полигонов в модели. В рамках игры и летучей мыши, количество полигонов не сильно влияет на производительность, поэтому могу позволить больше

Эту операцию мы проделываем со всеми частями, которые будут морфиться. В основном это крылья и голова. Для тела будет достаточной одной только галочки mesh, сетка не требуется, так как объект будет статичен.

Когда все готово, можно прокладывать кости. Для этого используем инструмент кость (bone) в правом верху экрана. На экране всегда присутствует изначальная точка — root.
Это базовая кость, к которой по умолчанию привязана вся композиция, она является первой родительской костью. Привязки к родительским костям показаны стрелочками.

image

Сетка костей

image

Расшифровка родительских костей

Проложив кости, нужно привязать их к мешу, для этого нажимаем кнопку Add bones to bind, выделяем все кости которые принадлежат к спрайту и жмем правой кнопкой мыши, либо по пустой части экрана, либо на Auto Generate Weight. Кости автоматически привяжутся к спрайту, им задастся значение Weight. Величина Weight или в народе “веса” отвечает, как кость влияет на спрайт. Это важно в случаях, когда к одному спрайту одновременно привязано несколько костей. Регулировка происходит при помощи ползунков, определяющих “зону ответственности” каждой кости.

image

Эту операцию проводим со всеми костями и спрайтами, корректируем величину weight при некорректном сгибе спрайта. Когда все кости привязаны, и отрегулированы, можно приступать непосредственно к анимированию объекта. Для этого я записал небольшое видео.

Построение ключевых кадров на примере крыла

Такая система меш анимирования подходит для всех подвижных частей нашей летучей мыши. Я доделываю тоже самое для второго крыла, слегка добавляю амплитуды для ушей и туловища.

TIPS: Некоторые моменты, которые могут прояснить работу, и то что я показал:

1. Ключевые кадры создаются автоматически, если вы сделали какое то действие с костью. (При условии что нажат соответствующий флажок)

image

2. С одной из последних версий в Dragon bones появились отдельные таймлайны для таких переменных как Move, Rotate и Scale. Чтобы принудительно поставить ключевую точку по одной из них, следует нажать на флажок.

image

3. Для того, чтобы изменять скины для персонажа, нужно добавлять спрайты в соответствующие подпапки (displays). Предварительно их нужно превратить в mesh, отрисовать сетку и привязать кости, так как делали с основными спрайтами, чтобы при той же анимации, все отображалось корректно. Чтобы добавить спрайт, просто перетаскиваем драг’н’дропом в соответствующий раздел.

image

4. В Dragon Bones имеются кривые, которые слегка изменяют пропорции воспроизведения анимации, задержки и акценты на каких то ключевых кадрах. На словах сложно объяснить как они работают, но очень наглядно сразу становится понятно какой это волшебный инструмент. ВАЖНО: На каждый ключевой кадр можно повесить свою кривую, и он будет действовать до следующего правила по искривлению.

image

Что мы получили в итоге?

Получилась несложная анимации в двух цветах.

Полученный результат мы можем выгрузить в различных форматах, которые скушает любой игровой движок.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *