Моделювання рідини
Моделювання рідини (англ. fluid simulation) — галузь комп'ютерної графіки, що використовує засоби обчислювальної гідродинаміки для реалістичного моделювання, анімації та візуалізації рідин, газів, вибухів та інших пов'язаних з цим явищ. Маючи на вході якусь рідину і геометрію сцени, симулятор рідини моделює її поведінку та рух у часі, враховуючи багато фізичних сил, об'єктів і взаємодій. Моделювання рідини широко використовується в комп'ютерній графіці та ранжується за обчислювальною складністю від високоточних обчислень для кінофільмів і спецефектів до простих апроксимацій, що працюють у режимі реального часу і використовуються переважно в комп'ютерних іграх.
Підходи
Існує кілька конкурентних методів моделювання рідини, кожен з яких має свої переваги та недоліки. Найпоширенішими є сіткові методи Ейлера, гідродинаміка згладжених частинок (ГЗЧ), методи, засновані на завихреннях, і метод ґраткових рівнянь Больцмана. Ці методи виникли в середовищі обчислювальної гідродинаміки та запозичені для практичного застосування в галузі комп'ютерної графіки та спецефектів. Основна вимога до цих методів з боку комп'ютерної графіки — візуальна правдоподібність. Іншими словами, якщо спостерігач під час перегляду не помічає неприродності анімації, то моделювання вважається задовільним. У фізиці, техніці та математиці, з іншого боку, основні вимоги ставляться до фізичної коректності та точності моделювання, а не до його візуального результату.
Розробка
У комп'ютерній графіці найраніші спроби розв'язати рівняння Нав'є — Стокса в тривимірному просторі зробили 1996 року Нік Фостер (англ. Nick Foster) і Дімітріс Метаксас (англ. Dimitris Metaxas). Їхня робота ґрунтувалась на ранішій роботі з обчислювальної гідродинаміки, опублікованій 1965 року Гарлоу і Велшем (англ. Welch, J.E.). До роботи Фостера і Метаксаса багато методів моделювання рідини будувалось на основі спеціальних систем частинок, методах зниження розмірності (типу двомірних моделей мілкої води на зразок калюж) і напіввипадкових шумових турбулентних полях. 1999 року на SIGGRAPH Джос Стем опублікував метод так званих «стабільних рідин» (англ. Stable Fluids), який використовував напівлагранжів метод адвекції та неявні інтеграції в'язкості для забезпечення безумовно стійкої поведінки рідини. Це дозволило моделювати рідини зі значно більшим часовим кроком і загалом призвело до швидших програм. Пізніше, у 2001—2002 роках, цей метод розширив Рон Федків разом зі своїми співробітниками, завдяки чому стало можливим обробляти складну модель води в тривимірній сцені з використанням методу встановленого рівня.
Найбільший внесок у галузь моделювання рідини внесли Рон Федків, Джеймс О’Браєн, Марк Карлсон (англ. Mark Carlson), Грег Тарк, Роберт Брідсон (англ. Robert Bridson), Кен Мюзит (англ. Ken Museth) і Джос Стем.
Програмне забезпечення
Нижче наведено набір найвідомішого й поширеного програмного забезпечення, призначеного для моделювання рідини.
- RealFlow — комп'ютерна програма від Next Limit Technologies, спочатку призначена виключно для моделювання рідин за допомогою ГЗЧ, однак пізніше розширена для моделювання газів, твердих і деформівних тіл тощо. 2007 року розробники «RealFlow» отримали премію за технічні досягнення від Академії кінематографічних мистецтв і наук за розробку своєї програми.[1]
- Вільний пакет для створення тривимірної графіки Blender містить реалізацію стабільного методу ґраткових рівнянь Больцмана для моделювання рідини.
- Glu3d — плагін для 3ds Max і Maya, використовує ГЗЧ.
- AfterBurn — популярний плагін до 3ds Max, серед іншого здатний моделювати рідини за допомогою системи частинок.
- FumeFX — плагін до 3ds Max для моделювання рідин, газів, полум'я та інших явищ. Заснований на внутрішній технології «VoxelFlow», яка використовує нестискувані рівняння Ейлера для маси та збереження імпульсу.[2]
Примітки
- 10 Scientific and Technical Achievements to Be Honored with Academy Awards (англ.). Академія кінематографічних мистецтв і наук. 9 лютого 2008. Архів оригіналу за 29 квітня 2012. Процитовано 15 серпня 2011. «RealFlow was the first widely adopted, commercially available, easy-to-use system for the simulation of realistic liquids in motion picture visual effects.»
- FumeFX - Simulation (англ.). Sitni Sati. Архів оригіналу за 25 серпня 2012. Процитовано 15 серпня 2011.
Посилання
- RealFlow Homepage
- Blender Homepage
- Fusion CI Studios, Fluid FX Specialists
- Flowline Homepage
- Glu3d Homepage
- ICE SPH Fluids Homepage
- RealFlow Homepage
- Blender Homepage
- AfterBurn Homepage
- Dynamite Homepage
- DPIT Nature Spirit Homepage
- Ron Fedkiw's Homepage
- Berkeley Computer Animation Homepage
- Fluid Simulation for Video Games
- Лев Симонов «LEVel» (24 февраля 2009 года). Моделирование жидкости в 2D с использованием GPU. UralDev. с. 3. Архів оригіналу за 15 травня 2012. Процитовано 15 августа 2011.
- Сергей Кольцов, Юлия Сазонова (№9 за 2008 год). Моделирование жидкостей — от капли к океану. журнал Компьюарт. Архів оригіналу за 15 травня 2012. Процитовано 15 августа 2011.