Всем привет.

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

Анимация внутри Unity

Что мы имеем - просто траву в несколько слоев для осуществления колыханий которой я решил подыскать соответствующую программу.

В первую очередь выбор пал на Anima2d - встроенный в Unity3d инструмент для костной анимации, который выглядел очень достойно, да и опыт работы с программой у меня уже был, ведь с помощью неё была реализована анимация главного героя

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

Анимация в DragonBones

Следующем вариантом был DragonBones – та же скелетная анимация, но с последующим портированием оной в Unity, что довольно трудоёмко – один поиск плагинов и подходящего Json чего стоят (о нём как-нибудь в другой раз).

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

Ручная покадровая рисовка

Кратко - спустя 12 нарисованных кадров, я понял, что этого очень мало для плавной анимации, так что осознав масштаб работы (3 слоя по 45-60кадров), я всё бросил.

Шейдеры

С самого начала было понятно, что этот вариант самый лучший - шейдеры мощная вещь и способна на многое, но увы для её освоения требуются много сил и навыков. Я попросту понятия не имею, что это такое и как оно работает. Сколько бы советов на формах не перечитал, сколько бы видео на ютубе не пересмотрел, все равно, эта тема остается для меня темной лошадкой.

В конечном счете я вернулся к изначальному варианту и оставил траву без анимации.

P.S. Не зацикливайтесь на мелочах в своих играх, в первую очередь геймплей, а доработки потом. Удачи вам в разработке игры вашей мечты.