Когда дизайнеры выбирают метод имитации воды и волн, им приходится выбирать либо быстрое вычисление, либо реалистичные эффекты; современные методы способны оптимизировать только одно или другое. Теперь метод, разработанный исследователями из Института науки и технологий Австрии (IST Austria) и NVIDIA, устраняет этот пробел. Их метод моделирования может воспроизводить сложные взаимодействия с окружающей средой и мельчайшие детали на огромных площадях - и все это в режиме реального времени. Более того, базовая конструкция метода позволяет графическим дизайнерам легко создавать художественные эффекты. Авторы представят свою работу на ежегодной высшей конференции по компьютерной графике: SIGGRAPH 2018, где исследователи из IST Austria представят в общей сложности пять различных проектов.
Текущее моделирование волн на воде основано на одном из двух доступных методов. Методы «на основе Фурье» эффективны, но не могут моделировать сложные взаимодействия, такие как удар воды о берег острова. С другой стороны, «численные» методы могут имитировать широкий спектр таких эффектов, но требуют гораздо больших вычислительных ресурсов. В результате «сцены с деталями на уровне крошечных волн и с взаимодействием с окружающей средой на уровне километровых островов были либо невозможны, либо совершенно непрактичны», - говорит Крис Войтан, профессор IST Austria.«Наш метод делает возможным такую широту масштаба и диапазона в режиме реального времени». В команду разработчиков нового метода входят Томаш Скиван из IST Austria, а также Стефан Йешке, Матиас Мюллер-Фишер, Нуттапонг Чентанес и Майлз Маклин из NVIDIA, а также Войтан.
Достижение всего этого требовало изобретательности, а также глубокого понимания базовой физики. «Мы закодировали волны с другими физическими параметрами, чем люди использовали ранее», - объясняет Войтан. «По сути, это дало нам значения, которые изменялись гораздо медленнее, что позволило нам моделировать мелкие детали с очень большим разрешением». Эти детали делают возможным множество эффектов, которые ранее были недостижимы или чрезвычайно дороги в вычислительном отношении, например, объекты, реалистично приземляющиеся в воду (или даже тысячи объектов, приземляющихся одновременно!), или вода, отражающаяся от бортов движущейся лодки..
Йешке, первый автор и бывший постдоктор IST в Австрии, подчеркивает возможные применения в создании подробных и художественных симуляций, например, для игр, фильмов или программ виртуальной реальности.«Сочетание диапазона, детализации и скорости вычислений представляет собой большой шаг вперед для отрасли», - говорит он. «Кроме того, благодаря тому, как мы кодируем нашу симуляцию, ею легко манипулировать и моделировать потоки воды в различных средах, таких как реки или океаны. Наш метод позволяет художникам легко «переписывать» природу и создавать сцены быстрее, чем когда-либо прежде». Команда уже разработала один такой инструмент: «рисунок волн» работает как кисть в программе для рисования, увеличивая высоту волн по мере того, как художник «рисует» в определенной области. Волновой художник также может быть адаптирован для создания волн, текущих в определенном направлении, как, например, в реках.