Единая система взаимодействия с водой в UE
Эллиот Грэй (Elliot Gray) рассказал о его превосходной системе взаимодействия с водой (Unified Interactive Water System), разработанной для Unreal Engine: интерация в реальном времени с жидкостями, едкими веществами, отражениями, а также их оптимизация и многое другое. UIWS уже доступна на UE Marketplace.
Эллиот Грей - геймплэй программист и дизайнер из Австралии, создатель Despoiler, а тех арт - это его хобби. В данный момент разрабатывает новый VR-проект, для которого ему необходимо взаимодествие с водой и другими жидкостями, отсюда и возникла идея создания подобной системы.
Обзор плагина UIWS
Вдохновившись Crysis 3 и возможностями UE4, Эллиот решил создать систему, которая будет не просто эффесктивной, но и максимально комфортной для дизайнеров. Взяв за основу встроенные в движок функции взаимодействия с водой, он создал "водные тела" в формате drag-and-drop, а также автоматизировал сам процесс добавления и рендеринга и максимально оптимизировал это для игр.
Основные фичи UIWS:
- Неограниченный размер "тела воды" (то есть одного водного ассета) и бесконечное количество этих тел в сцене.
- Перетаскивай, размещай, масштабируй и воспроизводи - никаких настроек и дополнительных действий не требуется.
- Локальная симуляция игроков.
- Интерактивная симуляция воды и едких жидкостей.
- Партиклы повреждений и коллизий спаунятся автоматически.
- Опционально полный мануальный контроль с помощью BP и С++.
Распространение пульсаций на воде
Взаимодействие оружия и персонажа с водой
Работает даже с партиклами
Debug Mode
Дебаг режим демонстрирует работу системы изнутри: большое "водное тело" в этом уровне привязано к игроку и покрывает уровень видимости игроком, а розовая часть - это маска, которая прячем не интерактивные зоны.
Производительность
Демонстрация перфоманса с разным уровнем настроек - на максималках и минималках. Конечно, есть ещё, что улучшать. Но результаты впечатляют.