Я хочу создать 2D-игру, но мне бы хотелось, чтобы персонаж носил тонны разного оборудования в разных комбинациях, например, RPG или что-то в этом роде.
Допустим, пользователь меняет свои плечи и штаны, это должно быть показано игроку, и все это различное оборудование должно следовать за действием различных персонажей (удар, попадание, магия правописания и т. Д.).
Я вижу несколько проблем, которые я хотел бы знать, лучший подход / алгоритм / архитектура для решения.
1 - спрайты или анимация
Должен ли я создавать разные спрайты для каждого оборудования в каждой анимации действия?
Что лучше: просто спрайтовать оборудование и анимировать его непосредственно в коде, например, вращать и переводить (используя что-то вроде tween на Flash)?
Есть ли другой лучший вариант? (Мне действительно не нравятся идеи выше)
2 - Позиции
Допустим, во время одного из движений персонажа он начинает смотреть прямо перед игроком, но заканчивает свое движение, показывая его правую сторону игроку (например, если он размахивает мечом от одной стороны к другой).
Если мы рассмотрим одну часть пользователя, например его голову, она начинается спереди, а затем поворачивает налево.
Это означает как минимум 3 разных положения для каждого головного снаряжения (шлем, кепка, что угодно).
Это, безусловно, влияет на ответ на вопрос № 1. Как лучше всего добиться этого?
3 - Слои
Давайте рассмотрим движение персонажа, когда он вращается на 360 градусов с открытыми руками. В начале анимации его правая рука находится близко к виду пользователя, а затем, в середине движения, это, вероятно, позади тела персонажа на анимации.
Какой бы ни была опция в вопросе № 1, вам, безусловно, нужно использовать какую-то модель слоя, чтобы этот спрайт или анимация начинались ближе к виду игрока, а затем переходили далеко от вида игрока.
Есть ли хороший способ сделать это?
Я знаю, что вопрос довольно длинный и трудный для понимания. Дайте мне знать, если вы считаете, что лучше иметь несколько рисунков, чтобы попытаться объяснить, какой из них, и я постараюсь это сделать.