Из всех программ для создания фракталов, которые я изучала, моей самой любимой была и остается Apophysis. Её автор – Марк Таунсенд. Автором алгоритма, лежащего в основе этой программы, является Скотт Дрейвс (который в 2025 году был в числе высокопоставленных технических специалистов, покинувших Stability AI).

Сегодня я расскажу именно об этом алгоритме
Называется этот известный алгоритм «Фрактальное пламя». Разработал его Скотт Дрейвс в 1992 году.
Если вам интересны его математические тонкости, вот тут хорошая статья: https://habr.com/ru/articles/251537/
Я попробую максимально просто описать этот алгоритм
Любой, кто пользовался программой Apophysis, при запуске видел те самые изображения с фрактальным пламенем, их программа генерирует сама. Большинство из них не выглядят впечатляюще и даже не похожи на фракталы (какими мы их привыкли видеть). Но в основе каждого из них лежит тот самый алгоритм.
Посмотрите внимательно на несколько изображений ниже. Что они напоминают вам? Огонь, космическую туманность или узоры на дне чашки недопитого кофе с молоком?




Секрет в том, что даже остатки кофе в чашке тоже подчиняются определённым правилам распределения.
Вот и алгоритм «Фрактального пламени» задает определённый порядок распределения точек.
Рассмотрим алгоритм в максимальном упрощении:
1. Изображение на экране состоит из пикселей, возьмём один из них. У него есть координаты x и y, а ещё цвет.
2. Есть набор правил. Например, пять формул. Каждая формула – это инструкция. Например: «Возьми пиксель, умножь X на 0.5, прибавь 0.3, сделай синус от Y, и поменяй цвет на красный». У каждой формулы есть вероятность – шанс, что её выберут.
3. Бросаем кубик. Случайно выбираем одну из пяти формул. Пиксель выполняет эту формулу – перемещается в новое место, и его цвет обновляется.
4. Запоминаем. На экране лежит невидимая сетка. Каждый раз, когда пиксель попадает в клетку, мы увеличиваем счётчик этой клетки на +1.
5. Записываем текущий цвет пикселя (усредняем с тем, что уже был).
6. Повторяем миллион раз. Точка скачет по экрану, как сумасшедшая, и сетка заполняется яркими пятнами.
7. Делаем «фотошоп». В конце применяем две хитрости:
Логарифмическая коррекция – чтобы яркие места не «выжигали» глаза, а тёмные стали виднее.
Гамма-коррекция – чтобы контраст был приятнее.
Готово! Получается картинка, похожая на пламя, дым, облака или что-то космическое. Чем больше итераций (повторов) – тем детальнее и красивее.

Алгоритм Скотта Дрейвса использует не только обычные линейные преобразования (как в классических фракталах), но и нелинейные – синус, сферу, полярные координаты, «сердце», «диск», «водоворот» и другие. Это и даёт такие причудливые, органичные формы, которые выглядят как живые.



