Есть несколько способов сделать это
1. Лучший способ:
- Получите ключевые кадры для запеченной симуляции с помощью надстройки .mdd для блендера.
- Импортируйте проект Blender в Unity.
- Добавьте префаб в сцену.
- Выберите свой объект и перейдите к компоненту Skinned Mesh Renderer и разверните BlendShapes. Там вы найдете все свои данные.
После этого вам понадобится скрипт для циклического переключения BlendShapes. Вот простой скрипт, который сделает эту работу.
Более подробную информацию можно найти в этом видео. Спасибо @derHugo за помощь в этом.
Я не собираюсь сосредотачиваться на следующих, но я размещу здесь несколько ссылок для всех, кто заинтересован.
2.Использование файлов Alembic.
Если я прав, это то, как команда Unity сделала это для короткометражного фильма ADAM. Посмотрите это видео.
Обратите внимание, что это не будет работать на мобильных устройствах.
3. Циклическое изменение сетки в каждом кадре.
Эта техника очень похожа на 2D-анимацию. Все, что вам нужно сделать, это экспортировать последовательность fbx для анимации, а затем прокручивать их. скрипт
Имейте в виду, что вы получите огромный удар по производительности от этого. С симуляцией ткани с примерно 7k tris, меняющей сетку каждые несколько кадров, я получил около 30 кадров в секунду без каких-либо других действий в сцене на IPhone 6.
person
Vlad Ilisan
schedule
31.01.2020