В игре Hearthstone есть карты с анимированными изображениями на них. Несколько примеров:
Кажется, анимация состоит из нескольких эффектов:
- Системы частиц.
- Затухание спрайтов внутри и снаружи / их вращение
- Простая прокрутка текстур
- Эффект искажения, очень заметный на мысе и волосах примера 1.
- Вихревые эффекты дыма, свет в примере 1 и зелено-пурпурное свечение в примере 2.
Первые три элемента тривиальны, я хотел бы знать, как можно сделать последние два элемента. Может ли это быть сделано в реальном времени в игре, или это анимация с предварительной визуализацией?
Ответы:
Я не знаю, насколько это актуально, но Даг ответил правильно
Я просто хотел добавить, что мне самому удалось воссоздать анимацию в точности так, как она встроена в игру, используя те же ресурсы, посмотрите здесь
Магни :
Медивх :
источник
Некоторые идеи приходят на ум, и их реализация будет полностью зависеть от движка, инструментов и, наконец, от работы и конвейера контента.
Спрайт анимация
Видео анимация
In-Engine анимация
Это три типа анимации, о которых я знаю и с которыми я работал. У каждого есть свои плюсы и минусы, и в этом конкретном случае я больше склонен к спрайту и видео анимации, потому что они менее интенсивно используют GPU.
В случаях, подобных этому, самый простой подход, вероятно, правильный.
источник
Один из способов сделать это - просто использовать видео вместо текстуры. Это видео должно быть подготовлено заранее и должно быть зациклено.
Другой способ - сделать всю сцену «персонаж, частицы, движущийся мыс» визуализированной в буфер, который позже при рендеринге кадра будет использоваться вместо текстуры.
У меня нет никакого опыта в достижении этих двух решений в 3D-движке, но я думаю, что оба возможны в 2D-движке (думаю, я могу сделать эту работу, например, в MOAI).
источник
Оба варианта 4 и 5 выполняются с помощью УФ-прокрутки текстуры по области, возможно, с сеткой на карте, которая слегка искажена (статическим способом). Кровавый черт, похоже, также имеет вторую текстуру, которая умножает первую текстуру и не прокручивает УФ.
В целом, это не дорогие эффекты. Они просто не так хороши, как выглядят на первый взгляд.
источник
Почти все эффекты могут быть достигнуты с помощью инструментов 2D скелетной анимации, таких как Spine. Спрайт - это в основном текстура на двухмерной сетке. Затем сетка трансформируется, чтобы заставить плащ двигаться и т. Д.
Посмотрите демонстрационный ролик с примерами таких эффектов. http://esotericsoftware.com/spine-in-depth#Features есть среды выполнения для наиболее распространенных движков / языков. Аналогичным инструментом является Spriter: http://www.brashmonkey.com
источник