Физические подходы к моделированию водной поверхности в реальном времени

Автор: Гуртовцев А.В.

Журнал: Теория и практика современной науки @modern-j

Рубрика: Основной раздел

Статья в выпуске: 6 (24), 2017 года.

Бесплатный доступ

В статье рассматриваются физические подходы к созданию моделей водных поверхностей. Основные методы: Лагранжевы, Эйлеровские, SPH. Современные технологии позволяют получить достаточно высокое качество изображения. Разработка производительных кросс-платформенных приложений, позволяющих осуществлять реалистичную визуализацию водных поверхностей, является актуальной задачей.

Лагранж, эйлер, моделирование водной поверхности

Короткий адрес: https://sciup.org/140271856

IDR: 140271856

Текст научной статьи Физические подходы к моделированию водной поверхности в реальном времени

Физические гибридные подходы позволяют избежать проблемы взаимодействия поверхности с другими объектами в динамичных сценах и получить реалистичные результаты моделирования. Реалистичных результатов можно достичь, используя волнение поверхности, полученное с помощью статических моделей и реализовать полноценный контроль над тем, что происходит в сцене, используя геометрические подходы. Такие методы, использующие гибридный подход, позволяют достигать компромисс между спектральными и геометрическими методами и получать быструю и высоко реалистичную картинку.

Большое количество физических моделей описания водных поверхностей и жидкостей основаны на решении уравнений Навье-Стокса. Используя эти уравнения, можно описать динамику водной поверхности и просчитать потоки воды для любого характера движения. Любая водная поверхность: река, море, океан, озеро, может быть рассмотрена в качестве потока несжимаемой жидкости, который описывается уравнениями (1.6) и (1.7).

da _ 1

— = —(v • V)v + vAv — ~Vp + f, (1.6)

Vv = 0, (1.7) где V - оператор набла, A - векторный оператор Лапласа, v - коэффициент кинематической вязкости, t - время, р - плотность, p - давление, f -векторное поле массовых сил, v - векторное поле скоростей.

Еще одним подходом к моделированию водной поверхности является использование уравнений мелкой воды Сен-Ванена. Такой подход используется, когда вертикальный масштаб моделируемой поверхности меньше, чем горизонтальный.

Есть два способа для дискретизации уравнений, приведенных выше, для того, чтобы использовать их в визуализации.

Первый способ - использование эйлеровых подходов, которые для расчетов перемещения воды из одних ячеек сетки в другие используют двухмерную или трехмерную сетку.

Второй способ - это применение лагранжевых подходов, которые основаны на частицах, переносящих воду, представляющих собой малые объемы воды.

Большое количество методов и алгоритмов физического моделирования было разработано, используя эти два подхода. Это происходило, в основном, за счет добавления системы частиц в эйлеровские подходы описания жидкостей. Эти принципы и применение их в компьютерной графике на примере моделирования океанов и морей были рассмотрены в работе [1]. Основной недостаток всех рассмотренных выше методов - огромные вычислительные затраты.

Подходы, основанные на уравнениях Лагранжа, разработанные для применения в компьютерной графике, являются на сегодняшний день самыми распространенными для применения к визуализации водных поверхностей и жидкостей.

В таких подходах [2] жидкость представляется в виде ряда частиц, взаимодействие и поведение которых описывается с помощью нескольких правил гидромеханики. Применяя такие подходы, можно получить реалистичные результаты визуализации водных поверхностей, но они не являются имитацией реальных процессов и не могут описывать процессы, которые протекают внутри водной среды, которые могут быть описаны с помощью уравнений Навье-Стокса.

Еще одним подходом к физическому моделированию водной поверхности является метод гидродинамики сглаженных частиц (SPH), которые сейчас применяются в компьютерной графике, хотя раньше назначение SPH было совсем иным. Такой подход использовался в астрофизике, для исследований движения облаков в космосе и их взаимодействий друг с другом. Позже модель утвердили для жидкостей, формализовали и впервые этот подход к моделированию жидкостей был описан в работе [3].

Уравнения Навье-Стокса можно упростить и линеаризовать с помощью SPH подхода. В таком методе подразумевается, что каждая частица (материальная точка) имеет свою массу и сумма таких масс дает полную массу водной среды, следовательно второе уравнение Навье-Стокса может быть опущено, так как масса жидкости остается постоянной в течение долгого времени, а в первом уравнении Навье-Стокса может быть опущен нелинейный коэффициент, описывающий перенос жидкости, так как она переносится частицами. Следовательно, при таком подходе достаточно применить одно линейное уравнение, для описания водной среды. Формула

dv _ 1  -

(1.8)

Ot = p " ^

где величина / = — Vp + pV2U + pg, которая представляет сумму сил, действующих на частицу, где Vp - сила давления, p.V2U - сила вязкости, pg - внешние силы, действующие на частицу.

Основная цель SPH – это определение частиц, как неявных поверхностей, связанных друг с другом и влияющих друг на друга. В данном случае частица представляет собой макрообъем жидкости в текущей позиции, а не молекулу. Любая физическая величина частицы может быть получена при суммировании этих величин всех близлежащих частиц.

У данного метода существует ряд проблем. Первая проблема – погрешность вычислений базового алгоритма, в результате которых наблюдаются эффекты сжимаемости среды. Другая проблема – это необходимость использования большого количества частиц для описания динамики и поведения больших водных сред с высокой точностью и высокой детализацией. Это приведет к большим вычислительным затратам и большой занимаемой памяти. Следовательно, такой подход невозможно применять в играх, интерактивных системах и других системах виртуальной реальности.

Главная идея большинства разработанных на сегодня физических подходов заключается в том, чтобы описать динамику массы жидкости при помощи подходов Эйлера, а небольшие явления, такие как брызги, пузыри и пена – с помощью подходов Лагранжа. Авторы в работе [4] совместили систему частиц с методом Эйлера для создания имитации брызг.

Преимущество эйлеровых подходов – это возможность описывать довольно большой спектр различных физических явлений и процессов в водной среде, поэтому имеют высокую популярность среди ученых и разработчиков в компьютерной графике. Но так как при создании небольших явлений, таких как брызги или пузыри, должна быть очень высокая детализация сетки, что приводит к резкому повышению вычислительной сложности по сравнению с методами SPH.

Другой недостаток – создание и использование сеток с фиксированным шагом. Это делает невозможным моделирование водной поверхности за пределами данной сетки. Преимущество лагранжевых подходов – представление мелких явлений, процессов и возможность их описания вне рамок сетки, но при этом требуется большое количество частиц, чтобы картинка была реалистичной, что в свою очередь также приведет к росту вычислительной сложности.

Поэтому имеет смысл грамотно использовать модификации и гибриды данных методов, чтобы найти компромисс между реалистичностью и быстродействием.

Список литературы Физические подходы к моделированию водной поверхности в реальном времени

  • Bridson, R. Fluid simulation [Text] / R. Bridson, M. Muller-Fischer // ACM SIGGRAPH. - 2007. - P. 1-81.
  • Reeves, W. T. Particle Systems: a Technique for Modeling a Class of Fuzzy Objects [Text] / W. T. Reeves // ACM Trans. Graph. - 1983. - Т. 2. № 2. - P. 91-108.
  • Monaghan, J. J. Smoothed particle hydrodynamics [Text] / J. J. Monaghan // Annual Review of Astronomy and Astrophysics. - 1992. - Т. 30. - P. 543-574.
  • O'Brien, J. F. Dynamic simulation of splashing fluids [Text] / J. F. O'Brien, J. K. Hodgins // Proceedings of the Computer Animation. - 1995. - P. 198.
Статья научная