🔥 Вогонь та Дим

← Назад
Клітинний автомат вогню: дерево → вогонь → вугілля → зола. Малюй мишею, підпалюй, додавай воду. Вітер впливає на поширення диму та полум'я.

🔥 Вогонь і Дим — Гідродинаміка

Реалістична симуляція вогню та диму на основі рідинної динаміки — розв'язання рівнянь Нав'є-Стокса для плавучого теплого газу. Турбулентні завихрення, підйом і охолодження відтворюються у реальному часі.

🔬 Що демонструє

Гаряче повітря є менш щільним і піднімається вгору (ефект плавучості). Розв'язник рівнянь Нав'є-Стокса відтворює вихори, дифузію та дисипацію теплоти, що разом дають турбулентний рух вогню і диму.

🎮 Як використовувати

Клацайте на сцену, щоб запалювати нові вогні. Регулюйте швидкість вітру, інтенсивність полум'я та в'язкість диму. Спробуйте перешкоди, щоб побачити, як вогонь і дим обтікають об'єкти.

💡 Чи знали ви?

Рівняння Нав'є-Стокса, що описують турбулентне горіння, були виведені незалежно Нав'є (1822) і Стоксом (1845). Аналітичного розв'язку для тривимірного турбулентного плину досі не знайдено — це одна з Проблем тисячоліття.

Про клітинний автомат «Вогонь і Дим»

Ця симуляція моделює поширення вогню та диму на тривимірній сітці за правилами клітинного автомата: кожна клітинка зберігає власний стан — кількість палива, температуру та наявність попелу. На кожному кроці палаюча клітинка з певною ймовірністю підпалює сусідні горючі клітинки, а ця ймовірність залежить від напрямку вітру та щільності палива, тоді як дим піднімається над фронтом полум'я і поступово розсіюється.

Такі клітинні автомати відтворюють емерджентну, самоорганізовану поведінку фронту горіння без розв'язання повних рівнянь гідродинаміки Нав'є-Стокса, тож працюють досить швидко для симуляції в реальному часі. Та сама логіка перколяції лежить в основі спрощених моделей поширення лісових пожеж, візуальних ефектів в іграх і кіно, а також досліджень того, як просіки та вітер формують напрямок розповсюдження вогню.

Часті запитання

Що таке клітинний автомат?

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

Як вогонь поширюється в цій симуляції?

Кожна палаюча клітинка на кожному кроці має певну ймовірність підпалити сусідні горючі клітинки. Цю ймовірність змінює вітер, що зміщує поширення в один бік, і щільність палива, яка визначає, наскільки легко клітинка займається і як довго вона горить, перш ніж перетворитися на попіл.

Чи справді налаштування вітру впливає на результат?

Так. Зі збільшенням сили вітру ймовірність займання зростає для клітинок з підвітряного боку і знижується з навітряного, тож вогонь витягується у видовжений напрямлений фронт замість приблизно кругового поширення.

Що означають кольори?

Яскраво-оранжеві та жовті клітинки активно горять при високій температурі, темно-червоні позначають вугілля, що охолоджується, сірий колір — вигорілий попіл, який більше не може горіти, а прозорий шлейф над полум'ям — це дим, що піднімається і розсіюється.

Чи це фізично точна модель вогню?

Це якісна модель, а не розв'язувач обчислювальної гідродинаміки. Вона відтворює реалістичні емерджентні патерни поширення, фронти горіння та вигорання, але не обчислює точні температури, теплообмін чи справжню турбулентну течію.

Чому вогонь іноді згасає сам по собі?

Якщо ймовірність займання низька або палива мало, вогонь може не встигнути дістатися нових горючих клітинок, перш ніж поточні клітинки вигорять до попелу. Це і є поріг перколяції: нижче критичної щільності вогонь не може підтримувати суцільний шлях крізь сітку.

Чи може вогонь перестрибувати через прогалини?

Лише якщо сусідні клітинки в межах правила сусідства горючі. Широкі ділянки без палива діють як протипожежні смуги і зупиняють фронт — саме так розчищені смуги використовують для стримування реальних лісових пожеж.

Що робить регулятор щільності палива?

Він задає частку клітинок сітки, що містять горючий матеріал. Вища щільність означає більше пов'язаного палива і швидше, повніше вигорання; нижча щільність фрагментує паливо і може повністю зупинити поширення вогню.

Як тут змодельовано дим?

Дим випускають палаючі клітинки, він рухається вгору і згасає в міру розсіювання. Це візуальний шар, що керується тими самими станами клітинок, а не окремо симульований газ, тож модель лишається легкою.

Де в реальному житті використовують подібні моделі?

Спрощені ймовірнісні моделі поширення застосовують для картування ризиків лісових пожеж, планування евакуації та розміщення протипожежних смуг, а той самий підхід клітинних автоматів широко використовують для швидких ефектів вогню та диму в іграх і візуальних ефектах.