Методы интерактивной визуализации динамики жидких и газообразных сред Костикова Елена Юрьевна, 521 гр. Научный руководитель: Игнатенко Алексей Викторович Введение в область • Сфера применения – интерактивные приложения: – – – – Научная визуализация Кинематограф Компьютерные игры Тренировочные симуляторы 2 Цель дипломной работы • Провести сравнительный анализ алгоритмов визуализации и методов моделирования • Разработать алгоритмы интерактивного моделирования жидких и газообразных сред, а также визуализации этих процессов • Реализовать программную библиотеку, содержащую предложенные алгоритмы 3 Специфика задачи • Задача разбивается на подзадачи: – Построение граничных условий – Физическое моделирование – Визуализация • Массивно-параллельная вычислительная задача: – Применимость параллельных вычислительных устройств в PC 4 Требования к решению • К моделированию: – Физическая точность – Скорость – Стабильность • К визуализации: – Визуальное качество – Легко расширяемая и изменяемая архитектура системы 5 Требования к решению • К моделированию: – Физическая точность – Скорость – Стабильность • К визуализации: – Визуальное качество – Легко расширяемая и изменяемая архитектура системы 6 Обзор существующих методов I. Моделирование движения жидкостей и газов II. Визуализация результатов 7 Формальная математическая постановка задачи Моделирование 1 V V V V P f , t V 0, Визуализация L( x, ) Le ( x, ) ' ( x , , ) L ( x , )( , n)d x 8 Формальная математическая постановка задачи Моделирование 1 V V V V P f , t V 0, Визуализация L( x, ) Le ( x, ) ' ( x , , ) L ( x , )( , n)d x 9 Обзор существующих методов Моделирование • Метод Лагранжа – – – – Среда моделируется системой частиц Можно задать любой закон движения Нет ограничений на пространство распространения Сложная реализация граничных условий • Метод Эйлера – Рассматривается пространство с регулярным разбиением – Проще аналитически работать с пространственными производными (градиент давления и вязкость) – Ограниченный объем и ресурсоёмкость 10 Обзор существующих методов Визуализация • Метод меташаров – Для метода Лагранжа (например, для визуализации воды) – Позволяет легко управлять соотношением качество/быстродействие – Эффект ртутных шариков • Метод трассировки лучей – Для метода Эйлера – Универсальный механизм, позволяющий реализовывать сложные оптические эффекты – Артефакты сеточных методов 11 Реализованная система 12 Построение граничных условий • Метод полей расстояний – Для каждой ячейки ищется минимальное расстояние проекции центра ячейки на каждый из треугольников (с использованием трассировки лучей) • Ускоряющая структура данных – иерархическое дерево • Ускорение с помощью CUDA 13 Методы моделирования • Система уравнений Навье-Стокса • Система частиц • Гибридный подход 14 Методы визуализации • Визуализация трехмерными текстурами • Визуализация с помощью трассировки лучей • Визуализация системой частиц 15 Ускорения на CUDA • Моделирование: от 2 до 10 раз • Построение граничных условий: в 10 раз • Генерация шума Перлина: до 70 раз 16 Сравнение с PhysX • Преимущества перед PhysX: – Бесплатная – Есть готовые примеры по визуализации объемных данных и систем частиц – Два метода для моделирования – Три метода для визуализации 17 Программная реализация • Плагин к 3ds Max • Программа на С/С++ CUDA – – – – Математическая библиотека Физическая симуляция на CPU и на GPU Построение граничных условий на CPU и на GPU Визуализация с помощью OpenGL GLSL • Размер кода: > 8 000 строк 18 Результаты • Проведен сравнительный анализ существующих методов • Разработана и реализована библиотека для интерактивного моделирования и визуализации движения жидких и газообразных сред • Проведено сравнение с существующими интерактивными библиотеками (PhysX) 19 20