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