Система превращения спрайтов в Unity

Sprite Swap Morph — это инструмент для Unity, позволяющий анимировать превращение одного спрайта в другой путём интерполяции их вершин.

Основные возможности:

  • Превращение между спрайтами: Поддерживается превращение двух спрайтов, при условии, что у них совпадает топология (одинаковое количество вершин и их порядок).
  • Поддержка SpriteShape и SpriteRenderer: Ассет работает как с SpriteRenderer, так и с кастомными шейдерами.
  • Простое API: Основной класс SpriteMorpher (или его аналоги) позволяет управлять степенью превращения (от 0 до 1) и назначать начальный/конечный спрайты.

Как использовать:

  1. Убедитесь, что два спрайта имеют одинаковую сетку (у них должно быть одинаковое число вершин и одинаковый порядок треугольников).
  2. Добавьте компонент SpriteMorpher к GameObject.
  3. Назначьте исходный и целевой спрайты.
  4. Управляйте превращением через параметр morphAmount (значение от 0 до 1).
morpher.morphAmount = 0.5f; -- на половине пути между двумя спрайтами

Требования и ограничения:

  • Идентичность сеток: Спрайты должны иметь одинаковое число вершин и одинаковый порядок треугольников.
  • Нет автоматической генерации сетки: Вершины для превращения не генерируются автоматически — пользователь должен заранее подготовить спрайты с одинаковой сеткой (например, с помощью 2D Mesh Editor в Unity).
7
2
1
Начать дискуссию