Если в игре есть РАЗРУШАЕМОСТЬ ОБЪЕКТОВ, это тоже необходимо задокументировать. Например, при попадании ракеты в наш вертолет в определенном месте должен идти дым или должны проявляться другие повреждения. Следует указать локаторы, то есть места, где происходят изменения. Чтобы возгорание выглядело более правдоподобно, лучше определить десяток точек, из которых в случайном порядке будет появляться дымок.
Другой вариант – поменять текстуры. Например, при повреждении наш вертолет меняет базовую текстуру на черную и побитую, появляются царапины. Еще можно менять геометрию: если мы хотим, чтобы при критических повреждениях у вертолета отваливался хвост, в нужный момент можно заменить модель целого вертолета на модель поврежденного.
Логика создания 2D-анимаций схожа, но методы обычно связаны не с алгоритмами костей и суставов, а создаются, например, через ролики: по аналогии с классической мультипликацией, когда движения записываются покадрово либо через спрайты. Если мы делаем платформер в духе Mario, нужно будет определить, как должна выглядеть статичная модель, какие состояния у нее есть, и проработать анимации движения.
Хотя 2D-графика проще в освоении, одинаковый объем контента рисовать придется дольше, чем в 3D.
Для несложных игр возможно самостоятельное создание анимаций с нуля. Но для многих вещей есть уже разработанные технологии, доступные в самом игровом движке или в сторах к нему. Готовые анимации можно найти и у сторонних людей или компаний. Можно воспользоваться сервисом Mixamo, там собрано огромное количество готовых анимаций. А вот создать студию для Motion Capture (технология, позволяющая оцифровать движения реальных актеров) могут немногие, поэтому такие заказы при необходимости обычно отдаются на аутсорс.
ШАБЛОНЫ хорошо работают для создания персонажей. Куда эффективнее сделать абстрактную модель скелета и натягивать на нее разные «шкурки» и текстуры, чем создавать каждую модель отдельно. Игрок будет видеть разных персонажей, но анимация движений – одна и та же, сделанная для одного скелета; он может быть даже готовым, взятым из движка. Сверху надевается модель с правильными параметрами костей, если мы хотим, чтобы персонажи отличались друг от друга длиной конечностей. Далее покрываем персонажа необходимыми материалами. Если в игре предусмотрена система одевания персонажей, значит, у модели должны быть локаторы для шлема, наручей и других элементов одежды.
Существует довольно много генераторов моделей, позволяющих не задавать вручную все параметры (от роста до длины носа). Чтобы добавить персонажу индивидуальности, художник может разнообразить текстуры шрамами, татуировками и другими отличительными чертами.
Предметы и окружение чаще всего уже есть в библиотеках, так что всегда можно ограничиться созданием только материалов и текстур. Чтобы игры, собранные из готовых ассетов, не выглядели банальными, разработчики стараются во всем придерживаться выбранной стилизации. Это выглядит красиво, скрывает использование базовых моделей и выделяет игру среди конкурентов. Вспомните
Для реалистичной (даже стилизованной) игры действительно существует множество ассетов. При знании технологий и их подключения разработчик может сильно облегчить себе жизнь. Но часто разные модели сделаны в разной стилистике или с разным уровнем качества, поэтому сложно создать потрясающую графику, используя только готовые ассеты. А вот для прототипов и других не финальных версий игры такие модели – отличный вариант.
Добавление моделей (готовых или своих) требует определенной квалификации, нужно уметь их экспортировать и анимировать, прикреплять локаторы, визуальные эффекты и т. д. Для мультяшных игр моделей значительно меньше, зато создавать их сильно проще и дешевле.
Как правило, одними моделями дело не ограничивается. Если наш многострадальный вертолет должен уметь красиво взрываться, скорее всего, технически это будет реализовано с помощью VFX (Visual Effects). Для вспышек, обломков, падающих вниз, вспыхивающих синих глаз зомби, дымного света – всего, что в игре двигается, но не анимируется, обычно используют готовые решения внутри движка. Для 2D-графики это также актуально: если что-то с чем-то взаимодействует, можно дорисовать эффект.