Моделирование волн на поверхности жидкости - page 1

1
УДК 004.92
Моделирование волн на поверхности жидкости
© А.В. Куров, К.А. Якиль
МГТУ им. Н.Э. Баумана, Москва, 105005, Россия
Рассмотрены методы моделирования волн на поверхности жидкости, включая
круговую волну и наложение волн. Предложена программная реализация визуализа-
ции волн, основанная на использовании алгоритма построчного сканирования и
простой модели освещения Фонга. Рассмотрены способы увеличения скорости
работы алгоритма.
Ключевые слова:
поверхность воды, круговые волны, волны, наложение волн, по-
строчный z-буфер, модель освещения.
Задача визуализации поверхности жидкости (в частности воды) в
реальном времени является актуальной, так как широко используется
в построении изображений в компьютерных играх и при моделиро-
вании спецэффектов. В настоящее время существует большое коли-
чество систем моделирования жидкости, наиболее популярными из
которых являются RealFlow, Blender, Glu3d, AfterBurn, FumeFX. Дан-
ные системы основываются на гидродинамике сглаженных частиц
(англ. smoothed particle hydrodynamics — SPH) [2], стабильном мето-
де решеточных уравнений Больцмана [3] или на методе несжимае-
мых уравнениях Эйлера для массы и сохранения импульса.
Перечисленные подходы позволяют реалистично визуализиро-
вать поверхность воды, они учитывают физические характеристики
отдельных частей и предусматривают вычисление силы их взаимо-
действия либо используют физические зависимости между характе-
ристиками целого объекта.
Программная реализация таких алгоритмов требует значитель-
ного времени выполнения, большого объема памяти и существен-
ным образом загружает центральный процессор (ЦП). Поэтому для
поддержания реального времени задействована работа с аппаратной
частью.
В статье рассматривается разработка программы, которая требует
меньшего объема памяти, обеспечивает меньшую загрузку ЦП, реа-
лизует отображение в реальном времени за счет выбора соответству-
ющего метода моделирования и алгоритма визуализации, при этом
отсутствует непосредственное взаимодействие с аппаратной частью.
Алгоритм задания сетки.
Изначально для представления поверх-
ности жидкости используется каркасная (сеточная) модель. Для быст-
рого расчета новых координат сетки применяется исходный массив
1 2,3,4,5,6,7,8,9,10,...11
Powered by FlippingBook