Программы для создания фракталов на русском языке. Создание фрактального изображения

{tab= Mandelbulber }

Mandelbulber - экспериментальное приложение, разработанное для создания и работы с 3Д-фракталами Мандельброта также и с некоторыми другими видами 3D - фракталов, такими как Mandelbox, Bulbbox, Juliabulb, губка Менгера и т.д.
Особенности: великолепная гибкость по работе с 3Д-фракталами, работа с освещением тенями, цветом, поддержка эффектов ambient окклюзии, глубины резкости и т.д.
Неограниченное разрешение изображения на 64-битных системах. Простой в использовании 3D-навигатор по фракталу. Поддержка анимации. Mac- и Win- версии. Бесплатный.

Официальный сайт:

{tab= Apophysis 7x }

Apophysis 7x У генератора фракталов Апофиз много возможностей для создания и редактирования 2Д-фракталов, в том числе редактор, позволяющий напрямую редактировать фрактал, манипулируя треугольниками (своеобразными блоками-преобразованиями). функция мутации применяет случайное редактирование треугольников. регулировка размеров окон программы под себя. серъезные возможности по манипуляциям с цветом фрактала и даже язык сценариев с прямым доступом к большинству компонентов фрактала. Поддержка анимации. Экспорт с последующим рендерингом в программы, такие как FLAM3 и Chaotica. Поддержка нескольких языков, русского, пока, к сожалению, нет. Множество плагинов, позволяющие добиться невероятных результатов по фракталам. Бесплатный.

Официальный сайт: Apophysis 7x

Примеры работ:

{tab=Ultra Fractal }

Ultra Fractal - генератор фракталов, позволяет создавать изображения фрактальных множеств, а также выполнять их анимацию. Процесс построения изображений определяется набором алгоритмов, описывающих разновидности визуализируемых фракталов, методы их раскраски и применяемые к ним трансформации.
Особенности: модульная архитектура позволяет не только использовать кем-то уже созданные алгоритмы, но и создавать собственные. встроенный язык программирования. Уникальные параметры по работе с цветом и градиентами. Реализована возможность работать с альфа-каналами, слоями и масками, что позволяет легко комбинировать различные фрагменты изображений. Условно бесплатная.

Официальный сайт: Ultrafractal

Примеры работ (отобрано из галереи официального сайта)

{tab= Xenodream }

Xenodream - уникальная программа для создания фрактальной 3D графики. Создание или изучение от самых простых форм до сложноых рекурсивных 3D структур, эксперименты с освещением и текстурами. Экспорт текстур или карт глубины (depth maps) для других программ рендеринга. Создание стереограмм, анимации и многое другое. Программа предназначена как для профессионалов, так и для тех, кто любит развлекаться созданием фантастических трёхмерных моделей.

Условно бесплатная.

Официальный сайт

Примеры изображений:

{tab=JWildFire }

JWildFire - относительно неплохой и в то же время мощный редактор фрактальной графики. По функциональности его можно сравнить с широко известной программой Apophysis. Так же как и Apophysis, JWildFire работает с флеймами, но в отличии от Апофизиса, написанного на Delphi, JWildFire написана на языке Java.

Ключевыми особенностями программы являются:

  1. -возможность использования потрясающих 3Д эффектов, таких как волны, рябь на воде и пр.
  2. -3д эффекты наложения
  3. -мощный встроенный редактор флеймов-T.I.N.A.
  4. -встроенный генератор изображений (возможность генерировать картинки с облаками, плазмой и т.д.)
  5. -множество эффектов обработки изображений в 2Д (Н-р: Вращение, скручивание, разрушение и т.д.)
  6. -простой, но мощный пользовательский интерфейс, который позволяет анимировать практически любой параметр, всего за несколько кликов мыши
  7. -интеграция с Sunflow для высокого качества визуализации.

Основными отличиями от Апофизиса следующие:

У JWildfire в редакторе просмотр происходит в реальном времени. - Но у Apo просмотр является более точным.

JWildfire позволяет использовать флеймы как плагины (Variations)

JWildfire имеет функции HDR выходе (32 бит на канал)

JWildfire имеет Pseudo3D шейдер, который дает более реалистичные результаты для 3D рендера.

Для Apo создан огромный набор плагинов, но они не могут использоваться все вместе. У JWildfire набор меньше, но все же встроено достаточно большое количество плагинов, которые могут быть использованы все вместе.

JWildfire имеет встроенный компилятор для создания собственных плагинов на лету.

Платформа JWildfire является независимой и очень стабильной, - но в Apo рендер происходит быстрее (в 2 раза, в зависимости от формулы)

JWildfire не нуждается в каких-то дополнительных инструментах.

Является бесплатной

Примерами изображений могут послужить изображения генератора Apophysis.

{tab=Fractal Explorer }

Fractal Explorer -это бесплатный фракталогенератор, который позволяет создавать очень красивые фрактальные изображения на основе математических формул.

Программа рассчитана не только на профессионалов, но и на простых пользователей, а следовательно работать с ней не составит никакого труда.Работать в ней можно как и в профессиональных целях, так и ради развлечения, в обоих случаях программа доставит массу удовольствия и много часов приятного времяпровождения!
Fractal Explorer позволяет создавать фракталы, основаные на классических многочленных множествах (Множество Мандельброта, множество Жюлиа, множество Ньютона и их вариации), а также на некоторых других. Например: 4D-комплексные фракталы (фракталы основанные на кватернионах), 3D "странные" аттракторы, а также IFS системы.Кроме того Fractal Explorer имеет множество функций для создания различных эффектов и улучшения качества генерируемых изображений.

Оф.сайт программы : http://www.eclectasy.com/Fractal-Explorer/

Примеры работ с оф. сайта:

{tab=Incendia }

Incendia является полноценным бесплатным, многопроцессорным 3D фракталогенератором.
Программа постоянно развивается и обновляется. На данный момент она имеет богатый и мощный спектр возможностей для генерации полноценных трёхмерных фракталов.Ключевыми особенностями являются:
-Генерация изображений с разрешениями: 1024, 2048, 2560 и 3072 пикселей (4096 и 8192 пикселей для доноров, т.е. пользователей, сделавших добровольный материальный взнос в пользу автора программы)
-Поддержка двухкратного антиальясинга для получения более гладкой и совершенной картинки.
-45 разновидностей трёхмерных фракталов (правда многие будут включены в состав только будущих версий программы)
-Поддержка фрактальных скриптов для создания новых типов фракталов.
-Большая библиотека текстур, а также возможность импорта внешних текстур.
-Поддержка цветовых градиентов.
-Несколько стилей рендеринга (включая объемный туман, и многие новые шейдеры визуализации).
-Поддержка многоядерных процессоров.
-Наличие встроенных трёхмерных базовых форм для конструирования сложных фракталов. (Включает в себя шесть различных смещений карты базовой формы).
-Мощный редактор фрактальных трансформаций.
-Редактор трёхмерных базовых форм.
-Редактор материалов
-3D Mesh экспорт (до 1000х1000х1000 вокселей для доноров)
-Сохранение в буфер (для долгого рендера)
-Поддержка анимации.
Кроме того начиная с версии EX V в программу включено приложение Geometrica, специально разработанное для экспорта трёхмерных фракталов из Incendia в другие редакторы 3D графики.

Как уже было упомянуто, программа бесплатная, постоянно развивается и обновляется и автор просит всех желающих делать пожертвования, для дальнейшего развития программы!

Оф.сайт: http://www.incendia.net/index.html

Примеры Изображений:

{tab=Chaoscope }

Chaoscope является программным средством рендеринга 3D странных аттракторов. Это непрерывный проект, созданный и поддерживаемый Николя Desprez, текущая версия 0.3.1. Она является бесплатной , работающей на платформе Windows, Linux.

Официальный сайт :

Примеры изображений :

{tab=ChaosPro }

ChaosPro бесплатный генератор в режиме реального времени фрактальный генератор для MS Windows с поддержкой различных фрактальных типов (2D и 3D), истинная поддержка цветов, с поддержкой анимации. Благодаря встроенному компилятору довольно быстр, возможность написания собственных формул.

официальный сайт :

Примеры изображений:

{tab=Sterling }

Sterling является фракталогенератором, написанным на языке программирования C в 1999 году для Microsoft Windows Стивен С. Фергюсон. Sterling2 это бесплатная версия с различными алгоритмами генерации. Он был выпущен в сентябре 2008 года Tad Boniecki. Помимо названия, программа выглядит так же, как оригинал, имеется дополнительно 50 формул для фрактальной генерации. Файлы, созданные Sterling могут быть использованы в Sterling2 и наоборот, хотя они будут показывать разные образы. Sterling основан на том, что в нем используются интересные фильтры для фрактальных изображений с помощью сложных параметров цвета и тени. Sterling имеет простой графический интерфейс с ограниченным числом функций. Программа сохраняет файлы JPEG, BMP или один из шести других форматах.

Официальный сайт :

Примеры изображений:

{tab=Fractron9000 }

Fractron 9000 является высокопроизводительным генератором фракталов для визуализации в среде Windows. Работает по алгоритму FractalFlames/

Fractron 9000 использует преимущества современных программируемых графических процессоров lдля значительного ускорения рендеринга. Пользователи имеющие поддержку CUDA и OpenCL видео оборудования смогут генерировать фрактальные изображения в режиме реального времени. Некоторые примеры изображений, созданных с Fractron приведены ниже. (взяты с официального сайта). Пользовательский интерфейс написан на C #, сообщается с OpenCL и CUDA через собственные пользовательские библиотеки совместимости. Fractron использует OpenGL для отображения фракталов.

официальный сайт: http://fractron9000.sourceforge.net/index.html

Last Update: 2011-08-09

{tab=Fractals }

ПРиобрести программу можно на the App Store!™

{tab=Fractal Science Kit }

Fractal Science Kit - фрактальный генератор для Windows, который создает фрактальные изображения из набора свойств, которые можно установить для контроля фрактального процесса генерации. Пример свойства включают в себя тип фрактала, размер изображения и параметров для контроля орбиты генрации, нормализация данных, передискретизации, сглаживание, гамма-коррекция и т.д. Вы можете работать с множеством встроенных алгоритмов (программ) или разработать свой собственный с использованием интерактивной средой программирования.

Fractal Science Kit фрактальный генератор поддерживает сотни встроенных уравнений, преобразования орбиты ловушки, контроллеры, позволяющие обычным пользователям создавать великолепные фрактальные изображения, обеспечивая при этом опытным разработчиком богатый набор иллюстративных примеров, на которых строится его собственные программы (алгоритмы). Более 60000 строк исходного кода для встроенных фрактальных программ и встроенных макросов (встроенных функций / методов) доступны через браузер, программы и редактор макросов.

поддерживает 3 основные фрактальные типы:
Мандельброт Fractals

Orbital Fractals

L-система Fractals

и другие: Mandelbrot, Julia, Convergent, Newton, Orbit Traps, Sierpinski Triangle, IFS, Strange Attractors, Rep-N Tiles, Symmetric Icons, Symmetric Attractors, Frieze Group Attractors, Wallpaper Group Attractors, Hyperbolic Attractors, Apollonian Gasket, Circle Inversion, Mobius Dragon IFS, Mobius Patterns, Grand Julian IFS, Elliptic Splits IFS, Schottky Group, Kleinian Group, L-System...

Полная версия стоит 30 долларов США

trial-версию можно скачать здесь: http://www.fractalsciencekit.com/extra/purchase.htm

Примеры :

{tab=Visions Of Chaos }

Еще один генератор фракталов в 2D и 3D.

Visions Of Chaos является профессиональным прикладным программным обеспечением для Windows. Он достаточно прост для людей, которые не понимают математику за ним, но достаточно развиты для фрактальных энтузиастов. Это наиболее полное все в одном приложение связанные с теорией хаоса. Поддерживает визуализацию видео. В программу включены сотни прмеров.

ПРиобрести программу можно на официальном сайте: http://softology.com.au/voc.htm

ПРограмма стоит 45 австралийских долларов. На сайте также можно скачать триальную версию , пользоваться ей можно неограничено по времени, но с закрытыми функциями сохранения изображения и работы с видео.

{tab=Chaotica }

Chaotica представляет собой следующее поколение создания фрактальной среды, предназначена как для новичков, так и опытных профессионалов. Начинающие пользователи могут наслаждаться редактированием включенных примеров и случайных фракталов. Профессиональные пользователи особенно оценят очень быстрый, современный движок, печать качественных изображений проще в изготовлении, и в режиме реального времени контроль рендеринга сэкономит много часов. Хотя она основана на математике, пользовательский интерфейс Chaotica обеспечен выразительным художественным процессом. С момента своего изобретения в 1981 году, итерированных функций (IFS) фракталы были популярным программным обеспечением, таким как flam3 и Apophysis. Chaotica расширяет творческие возможности этих программ в мощной, ориентированной на производство окружения, среде.

0.72 версия бесплатна

1.0 версия Платная

Скачать и купить можно здесь: http://store.glaretechnologies.com/chaotica

Примеры (с оф.сайта)

{tab=Saturn & Titan }

Mars - Еще одна программа-генератор фракталов. Эта программа была использована для получения большого количества фрактальных изображений, которые доступны для просмотра и в некоторых случаях покупки на DeviantArt и Red Bubble. Она была написана на C + + с использованием Gtkmm также на Linux и больше не используется. Естественным ее продолжением стала программа Saturn . Когда изображение сохраняется с помощью программ Марса или Сатурна оно сохраняется в том виде, что автор называет файлом - семенем. Семя- файл представляет собой файл PNG со всеми необходимыми параметрами фрактала встроенный в него так, что программа расширения может генерировать значительно увеличенное изображение обычно 12000 на 8000 пикселей. Максимальный размер, который может быть визуализирован составляет около 700 мегапикселей. Titan представляет собой расширение для Сатурна.

Работает на Линуксе и Windows .

Скачать программу, мануалы для нее и некоторые файлы можно на сайте разработчика: http://element90.wordpress.com/software/downloads/

{tab=Silverfractal }

SilverFractal является генератором фракталов нового поколения. Он направлен на восстановление и упрощение фрактального искусства и открывает новые возможности.

Особенности

Генерация различных типов 2D/3D - фракталов по типу FractalFlames - алгоритма

Рендер фрактальной анимации

Полная поддержка плавающей запятой при обработке изображений

Поддержка нескольких слоев и слоев-вложений

Поддержка многопоточного рендеринга

Поддержка текстур

Версия 1.1.0.2 для Windows 8.1

Поддерживаемые процессорыx86, x64, ARM

Системные требованияIntel Core i процессоры

4 Гб оперативной памяти

скачать для Windows 8.1 можно (сайт Microsoft)

{tab=Electric Sheep }

Electric sheep - ресурс использующий распределённые вычисления для создания фрактальной анимации основанной на алгоритме fractal flame (разработан Скоттом Дрейвсом).

Название "Electric Sheep" берется из названия романа Филипа К. Дика "Мечтают ли андроиды об электроовцах". Название отражает характер проекта: компьютеры (андроиды), которые начали визуализировать заставку (мечтают) в виде фрактальных фильмов (овцы).

Процесс прозрачен для обычных пользователей, которые могут просто установить программное обеспечение в качестве заставки. Кроме того, пользователь может принимать более активное участие в проекте, вручную создавая овец (анимированные видео - файлы) для загрузки на сервер. Как заставка он (видеофайл) может развлечь пользователя, их компьютер используется также для оказания коммерческих проектов.

Видео - мотив от пользователя переносится в другие аспекты проекта: 100 или около того файлов хранящиеся на сервере в любое время упоминается как "стадо" для создание нового фрактала путем интерполяции или объединения фрактального кода файла пользователя с другим файлом другого пользователя и называется спаривание / разведение ; изменения в коде называются мутациями и т.д.

Проще говоря на ваш компьютер устанавливается программное обеспечение, которое использует вашу машину для вычисления и рендера фрактальной анимации, одновременно с этим загружая и демонстрируя вам уже готовую фрактальную анимацию в виде так называемых "живых" обоев, или screensaver. При этом эти самые обои сохраняются на компьютере в определённой папке и их можно оттуда вытащить, чтобы затем использовать для своих целей, например в видеомонтаже (правда длина роликов коротковата - 5 секунд).

Более подробно ознакомиться и скачать дитрибутив можно на сайте проекта: http://electricsheep.org/

Скриншоты видео:

Фрактал - это фигура с дробной размерностью (не 2D и не 3D, а, например, 1,5D или 2,3D). Благодаря такой особенности фигура получается самоподобной, т.е. состоящей из множества частей, каждая их которых является уменьшенной копией всей фигуры в целом. Понятие фрактала в математику ввел американский ученый польского происхождения Бенуа Мандельброт (1924-2010). Вот классическая книга по фракталам (в формате djvu) основоположника этого направления математики.

Apophysis

Для генерации, отображения фракталов и сохранения их в виде картинки существует не один десяток компьютерных программ. Apophysis - одна из самых популярных. Существует базовый вариант программы (текущая версия Apophysis 2.09) и продвинутая версия (Apophysis 7X). В последней больше настроек, разнообразнее шаблоны и параметры, по которым шаблон можно изменять. В обеих версиях можно, кроме статичной картинки, создавать видео (морфинг одного фрактала в другой). В версии 7X предусмотрены плагины для создания трехмерных фракталов. Интерфейс программ совпадает на 90%.

Изображение фракталов строится по сложноым математическим формулам. От пользователя программы математический аппарат спрятан, но дана возможность менять различные параметры формул, которые влияют на трансформации и цвет конечного изображения. Один из самых простых сценариев работы с программой: а) выбрать шаблон, который ближе всего к тому, что вы хотите получить в итоге; б) в редакторе назначить дополнительные трансформации или изменить параметры заданных для этого шаблона трансформаций; в) отрегулировать цветовую гамму; г) сохранить на диск в стандартном графическом формате png с прозрачным фоном. Шаблоны называются флеймами (flames). Сохранение на диск называется рендерингом (render flame).

Flames

В любую поставку программы включается большая или не очень коллекция флеймов. Каждый флейм - это сохраненный набор параметров фрактала. Внешне пользователь может видеть флеймы в виде списка в левой части окна программы. Это список названий в виде текста или превьюшки. Переключаться между режимами отображения можно по кнопкам Classic view и Trumbnail view на панели инструментов. Клик на пункт этого списка приведет к тому, что в центральное окно программы загрузится этот шаблон и вы увидите сгенерированное изображение. Скорость отрисовки изображения зависит от установки качества. За это отвечает элемент селект на панели инструментов со значениями 5, 10, 15, 50... Чем выше выставлено качество, тем дольше отрисовывается картинка. А картинка будет перерисовываться часто, при каждом изменении хотя бы одного параметра, поэтому рекомендую выставить качество самое слабое 5, и повышать его разово, если до сохранения на диск хочется какие-то детали все же рассмотреть.

В Apophysis 7X можно сгенерировать новый флейм по кнопке New. В обеих версиях можно воспользоваться флеймом скачанным из Интернета - просто откройте в программе файл с диска с расширением flame. Также вы сами можете создать флейм в виде файла на диске - в меню File подпункт Save Parameters.

Для новичков работа с программой - это не столько целенаправленное изменение параметров, сколько выбор между вариантами, которые сгенерировала сама программа. На панели есть кнопка Mutation - по ней случайным образом создаются 8 вариаций относительно текущего флейма. В открывшемся окне - 9 комбинаций, ваш первоначальный вариант - в центре. Можно задать программе параметр, который будет участвовать в мутациях.

Редактор

Самый интересный модуль программы - это редактор (Editor). В редакторе вы производите тонкую и тончайшую настройку формул (которые все равно скрыты, но вы работаете с их параметрами). В редакторе также можно создать свой фрактал с нуля (самая левая кнопка New Flame на панеле инструментов редактора). Кнопкой New Transform добавляется новая трансформация, которая отображается на главном поле редактора в виде треугольника. На закладке Variations для трансформации выбирается параметр и выставляется его значение, отличное от 0 (если 0, то параметр не участвует в формуле). В поле Weight выставляется вес трансформации (степень влияния на всю картинку). Подробнее о работе с редактором вы можете почитать .

Цвета

Цветовую гамму для вашего фрактала можно назначать как для отдельной трансформации (это делается в редакторе на закладке Colors), так и для всей композиции (кнопка Gradient на панели главного окна Apophysis). Градиенты также как и флеймы можно сохранять на диск и обмениваться ими между пользователями. На закладке градиента можно регулировать цветовую гамму, контрастность, яркость, размытость, насыщенность...

В прошлом году, особенно осенью-зимой, когда в силу личных обстоятельств, я оказалась наиболее далека от фрактальной графики и всего с ней связанного, мне стали задавать вопросы по самостоятельному написанию формул для генерации фракталов. Когда-то и у меня был интерес в этой области. Вероятно, при наличии дополнительного времени, и более - огромного желания, то ушла бы с головой в этот вопрос. Но я понимала, что знания в области программирования, которые когда-то были у меня в период учебы в универе, благополучно забылись, поскольку слишком долго не использовались. Имея мощнейшие инструменты для творчества в виде уже изученных и любимых программ, я не увидела смысла в поисках чего-то, что могло в итоге не оправдать ожиданий. Однако не могу остаться в стороне от темы, которая мне лично кажется во многом символичной, поскольку может стать определяющей. Это интерес и тяга к новому, к развитию, к уникальности.
Сегодня расскажу об одной интересной программе, рассчитанной на людей, разбирающихся в программировании.

Итак - Fractorama. Freeware. Автор программы John F. Dumas работает разработчиком программного обеспечения, преподает и имеет степень в области прикладной математики. Интерфейс программы довольно лаконичен. Перед вами два окна. Первое - текстовой редактор, в котором нужно писать формулы, а второе предназначено для визуализации результата ваших трудов - собственного готового фрактала.
Давайте посмотрим на работы из галереи программы:





Как Вам? Мне напоминает сразу три программы, но выглядит очень симпатично.
Некоторые особенности программы Fract-O-Rama! (именно так её называет автор).
Все фракталы создаются с помощью фрактального языка сценариев Fract-O-Rama, который позволяет исследовать более широкий спектр фрактальных типов, чем ряд других фрактальных генераторов. Программа может работать как на win32, так и в среде Unix, в связи с тем, что была написана с использованием Qt. Поставляется с полным исходным кодом. В каждой из загрузок содержится документация и большое количество формул-примеров. Доступны разные варианты загрузки - выбирайте подходящий.
Если Вас заинтересовал процесс создания фрактала в этой программе, загляните в "About Us".
Здесь находится галерея: https://fractoramafractalart.com/
Страница проекта на deviantart http://fract-o-rama.deviantart.com/
Подведу итог. Перед нами любопытная программа, предназначенная для тех, кто знает программирование или хочет научиться. Трудно судить о состоянии проекта на сегодняшний день, поскольку последние фракталы в галерее датированы 2015-м годом. В любом случае, программа достойна внимания.

Последней из рассматриваемых видов компьютерной графики - это фрактальная графика. Фрактальная графика является на сегодняшний день одним из самых быстро развивающихся перспективных видов компьютерной графики.

Математической основой фрактальной графики является фрактальная геометрия . Здесь в основу метода построения изображений положен принцип наследования от, так называемых, «родителей» геометрических свойств объектов-наследников .

Понятия фрактал , фрактальная геометрия и фрактальная графика , появившиеся в конце 70-х, сегодня прочно вошли в обиход математиков и компьютерных художников. Слово фрактал образовано от латинского fractus и в переводе означает «состоящий из фрагментов» . Оно было предложено математиком Бенуа Мандель-Бротом в 1975 году для обозначения нерегулярных, но самоподобных структур, которыми он занимался.

Фракталом называется структура, состоящая из частей, которые в каком-то смысле подобны целому. Одним из основных свойств фракталов является самоподобие . Объект называют самоподобным , когда увеличенные части объекта походят на сам объект и друг на друга. Перефразируя это определение, можно сказать, что в простейшем случае небольшая часть фрактала содержит информацию обо всем фрактале.

В центре фрактальной фигуры находится её простейший элемент -- равносторонний треугольник , который получил название «фрактальный» . Затем, на среднем отрезке сторон строятся равносторонние треугольники со стороной, равной (1/3a) от стороны исходного фрактального треугольника. В свою очередь, на средних отрезках сторон полученных треугольников, являющихся объектами-наследниками первого поколения, выстраиваются треугольники-наследники второго поколения со стороной (1/9а) от стороны исходного треугольника.

Таким образом, мелкие элементы фрактального объекта повторяют свойства всего объекта. Полученный объект носит название «фрактальной фигуры» . Процесс наследования можно продолжать до бесконечности. Таким образом, можно описать и такой графический элемент, как прямую .

Изменяя и комбинирую окраску фрактальных фигур можно моделировать образы живой и неживой природы (например, ветви дерева или снежинки), а также, составлять из полученных фигур «фрактальную композицию» . Фрактальная графика , также как векторная и трёхмерная , является вычисляемой. Её главное отличие в том, что изображение строится по уравнению или системе уравнений. Поэтому в памяти компьютера для выполнения всех вычислений, ничего кроме формулы хранить не требуется.

Только изменив коэффициенты уравнения, можно получить совершенно другое изображение. Эта идея нашла использование в компьютерной графике благодаря компактности математического аппарата, необходимого для ее реализации. Так, с помощью нескольких математических коэффициентов можно задать линии и поверхности очень сложной формы.

Итак, базовым понятием для фрактальной компьютерной графики являются «Фрактальный треугольник» . Затем идет «Фрактальная фигура» , «Фрактальный объект» ; «Фрактальная прямая» ; «Фрактальная композиция» ; «Объект-родитель» и «Объект наследник» . Следует обратить Ваше внимание на то, что фрактальная компьютерная графика , как вид компьютерной графики двадцать первого века получила широкое распространение не так давно.

Её возможности трудно переоценить. Фрактальная компьютерная графика позволяет создавать абстрактные композиции, где можно реализовать такие композиционные приёмы как, горизонтали и вертикали, диагональные направления, симметрию и асимметрию и др. Сегодня немногие компьютерщики в нашей стране и за рубежом знают фрактальную графику . С чем можно сравнить фрактальное изображение ? Ну, например, со сложной структурой кристалла, со снежинкой, элементы которой выстраивается в одну сложную структуру. Это свойство фрактального объекта может быть удачно использовано при составлении декоративной композиции или для создания орнамента. Сегодня разработаны алгоритмы синтеза коэффициентов фрактала , позволяющего воспроизвести копию любой картинки сколь угодно близкой к исходному оригиналу.

С точки зрения машинной графики фрактальная геометрия незаменима при генерации искусственных облаков, гор, поверхности моря. Фактически благодаря фрактальной графике найден способ эффективной реализации сложных неевклидовых объектов, образы которых весьма похожи на природные. Геометрические фракталы на экране компьютера -- это узоры , построенные самим компьютером по заданной программе. Помимо фрактальной живописи существуют фрактальная анимация и фрактальная музыка.

Создатель фракталов -- это художник, скульптор, фотограф, изобретатель и ученый в одном лице. Вы сами задаете форму рисунка математической формулой, исследуете сходимость процесса, варьируя его параметры, выбираете вид изображения и палитру цветов, то есть творите рисунок «с нуля». В этом одно из отличий фрактальных графических редакторов от прочих графических программ.

Например, в Adobe Photoshop изображение, как правило, «с нуля» не создается, а только обрабатывается. Другой самобытной особенностью фрактального графического редактора является то, что реальный художник, работающий без компьютера, никогда не достигнет с помощью кисти, карандаша и пера тех возможностей, которые возможны в фрактальных ГР программистами.

В лесах фрактальной графики. Часть 2

Дмитрий Шахов, фрилансер, г.Москва

В данной статье мы с вами поговорим о генераторах фракталов. Как известно, визуализация, или построение фрактального рисунка, осуществляется по какому-либо алгоритму или путем автоматической генерации изображений при помощи вычислений по конкретным формулам.

Дальнейшие изменения значений в алгоритмах или коэффициентах в формулах приводят к модификации этих изображений. Существуют генераторы фракталов, которые, в принципе, своим возникновением обязаны исследованиям фрактальной геометрии Бенуа Мандельброта, а также его совместным работам в области информатики с Ричардом Фоссом и Кеном Масгрейвом. В 1977 году Бенуа Мандельброт написал книгу «Фрактальная геометрия природы». В ней он подробно рассказал, как ручными математическими инструментами нарисовать сложный и красивый самоподобный узор.

Однако вычислительные инструментальные средства с автоматизированными вычислениями и выводом на печать позволили обойти бесконечные расчеты и операции с логарифмическими линейками вследствие очень быстрых итеративных операций. В 1980-е годы Кен Масгрейв трудился над методом реалистичных изображений ландшафтов с помощью математического аппарата фракталов. Во многом благодаря его работам и возникло так называемое алгоритмическое искусство. В дальнейшем на основе его алгоритмов генерации изображений была создана такая известная программа, как Bryce («Брайс»), предназначенная для 3D-моделирования, рендеринга и анимации и специализирующаяся на генерировании фрактальных пейзажей. Кроме того, в 1985 году журнал Scientific American представил алгоритм для вычисления множества Мандельброта для широкой аудитории. Таким образом, в 1980-е годы и были заложены первые кирпичики разросшегося сегодня направления в компьютерной графике.

В настоящее время существует достаточно большое количество программ для визуализации фракталов, проще говоря — фракталогенераторов. Но начнем мы, пожалуй, с одной из самых популярных и любимых фрактальщиками всего мира программ —Apophysis.

Apophysis («Апофиз») (от греч . apofusiV — отросток) — редактор фрактальной графики (рис. 1) с открытым исходным кодом для визуализации в Microsoft Windows (также поддерживается Linux или Mac OS). Разработан Марком Таунсендом и переведен с языка С на язык программирования Delphi Скоттом Дрейвсом с добавлением графического пользовательского интерфейса. Очень распространенная в настоящее время среди цифровых художников программа Apophysis 7X является логическим продолжением более ранней версии программы Apophysis, от которой она отличается более многочисленными усовершенствованиями функций и пользовательского интерфейса, поддержкой большого количества встраиваемых плагинов и усовершенствованным кодом.

Следует отметить, что «Апофиз» визуализирует фракталы с помощью алгоритма, именуемого Fractal flames (дословно «фрактальное пламя» или «фрактальные искры»). Именно этот алгоритм был разработан Скоттом Дрэйвсом и, по сути, является частью метода «систем итерируемых функций».

Метод «систем итерируемых функций» (Iterated Functions System, IFS) появился в середине 1980-х годов как простое средство для получения фрактальных структур. IFS представляет собой систему функций из некоторого фиксированного класса функций, отображающих одно многомерное множество на другое. Наиболее простая IFS состоит из аффинных преобразований плоскости.

В 1988 году известные американские специалисты в теории динамических систем и эргодической теории Барнсли и Слоан предложили некоторые идеи, основанные на соображениях теории динамических систем, для сжатия и хранения графической информации и сформулировали их в виде метода фрактального сжатия информации. Происхождение названия связано с тем, что геометрические образы, возникающие в этом методе, обычно имеют фрактальную природу в смысле Мандельброта.

На основании своих идей Барнсли и Слоан создали алгоритм, который, по их утверждению, позволит сжимать информацию в 500-1000 раз. Вкратце метод можно описать следующим образом. Изображение кодируется несколькими простыми преобразованиями (в нашем случае аффинными), то есть коэффициентами этих преобразований (в нашем случае A, B, C, D, E и F).

Например, закодировав какое-то изображение двумя аффинными преобразованиями, мы однозначно определяем его с помощью 12 коэффициентов. Если теперь задаться какой-либо начальной точкой (например, X = 0, Y = 0) и запустить итерационный процесс, то после первой итерации мы получим две точки, после второй — четыре, после третьей — восемь и т.д. Через несколько десятков итераций совокупность полученных точек будет описывать закодированное изображение. Но проблема состоит в том, что очень трудно найти коэффициенты IFS, которые кодировали бы произвольное изображение.

Кроме аффинных, для построения IFS применяют и другие классы простых геометрических преобразований, которые задаются небольшим числом параметров. Например, проективные или квадратичные преобразования на плоскости.

Алгоритм Fractals flames отличается от IFS по следующим пунктам:

Итерация нелинейных функций вместо аффинных преобразований;

Отображение журнала плотности вместо линейной или бинарной;

Окрашивание по структуре (то есть по пройденным рекурсивным путям) вместо монохромного окрашивания или окрашивания по плотности.

На основе этого же алгоритма работают и некоторые другие генераторы фракталов, например JWildFire — мощный редактор фрактальной графики. По функциональности его можно сравнить с Apophysis. Так же как и Apophysis, JWildFire работает с флеймами, но в отличие от «Апофиза», написанного на Delphi, он написан на языке Java.

Другой известной программой является Fractal Explorer (рис. 2), которая позволяет создавать фракталы, основанные на классических множествах (множество Мандельброта, множество Жюлиа, множество Ньютона и их вариации), а также на некоторых других. Например, комплексные 4D-фракталы (фракталы, основанные на кватернионах), «странные» 3D-аттракторы, а также IFS-системы. Кроме того, в Fractal Explorer предусмотрено множество функций для создания различных эффектов и улучшения качества генерируемых изображений.

Следующая программа — Ultra Fractal — написана на Delphi и позволяет создавать изображения фрактальных множеств (рис. 3), а также выполнять их анимацию. Процесс построения изображений в ней определяется набором алгоритмов, описывающих разновидности визуализируемых фракталов, методы их раскраски и применяемые к ним трансформации. По принципу генерации программа практически не отличается от Fractal Explorer. Указанные алгоритмы представляются в виде текстовых файлов, написанных на специальном языке программирования, поддерживающем такие базовые конструкции, как массивы, функции, циклы и классы. Модульная архитектура написания алгоритмов позволяет пользователю создавать собственные.

Аналогично Adobe Photoshop, программа Ultra Fractal умеет работать с альфа-каналами, слоями и масками, что позволяет легко комбинировать различные фрагменты изображений.

Помимо вышеназванных программ существует довольно много генераторов, общей отличительной особенностью которых является создание 2D- или псевдо-3D-изображений. Но есть и другие программы — фракталогенераторы, выполняющие визуализацию на основе трассировки лучей, а следовательно, создающие трехмерные изображения.

Одним из самых популярных среди «фрактальщиков» 3D-фракталогенератором является программа Mandelbulb 3D, которая представляет собой фрактальный рэй трейсер и позволяет работать с трехмерными фракталами (рис. 4). Множество настроек, включая настройки цвета, освещения, постобработки, глубины и т.д., позволит оптимально реализовать творческий замысел и обеспечит необходимую гибкость при работе. Программа поддерживает анимацию, является бесплатной и постоянно обновляемой. По сути, она работает на основе множества формул или алгоритмов, постоянно обновляемых разработчиками и пользователями и с трассировкой лучей. Mandelbulb — это трехмерный аналог множества Мандельброта, которое было впервые теоретически описано Пьером Фату в 1905 году и получено Бенуа Мандельбротом в 1975-м с помощью машинных устройств, недоступных П. Фату, и является двумерным. К концу 2007 года небольшой группой энтузиастов с форумов было принято решение о разработке алгоритмов и программного обеспечения для рендеринга 3D-фракталов на основе множества Мандельброта. Визуализация первых фракталов была неимоверно трудной из-за малого количества доступной в то время машинной памяти, а также отсутствия пользовательского интерфейса. После добавления интерфейса и многих других формул были разработаны Mandelbulb 3D и Mandelbulber, которые в настоящее время считаются одними из передовых в этой области программных средств.

Термин «рэй трейсер» переводится на русский язык как «трассировщик лучей», то есть данная программа при построении фрактальной сцены и для достижения фотографической реалистичности использует технологию трассировки лучей (рис. 5). Рассмотрим вкратце эту технологию. Основная идея трассировки лучей заключается в следующем: для каждого пиксела на дисплее движок рендеринга проводит прямой луч от глаза наблюдателя до элемента выводимой сцены. Первое пересечение используется для определения цвета пиксела как функции пересекаемой поверхности элемента. В дальнейшем необходимо определить освещение пиксела, что требует проведения вторичных лучей. В отличие от первичных лучей, которые определяют видимость разных объектов, составляющих сцену, вторичные лучи проводятся от точек пересечения к разным источникам света. При их блокировке объектом данная точка находится в тени, которую отбрасывает источник света. Для получения наиболее реалистичного рендеринга необходимо учитывать характеристики отражения и преломления материала, а для расчета финального цвета пиксела нужно проводить лучи отражения и преломления.

В визуализации у трассировки лучей много преимуществ: простота и элегантность, работа с отражениями и вторичными отражениями (рис. 6) (вывод отражений частей объекта друг на друге), возможность работы с искривленными поверхностями, качественная обработка эффектов прозрачности, расчет теней.

Однако есть и свои минусы. Одним из самых значимых недостатков трассировки лучей является медленность визуализации (рендеринга). Например, тот же рэй трейсер Mandelbulb 3D визуализирует изображение с большим количеством лучей и разрешением 4000 пикселов по длинной стороне около 30 мин, при увеличении детализации, а следовательно, и количества лучей рендеринг выполняется еще дольше. Если же оперировать значениями и таких параметров, как расчет жестких теней, расчет окружения, отражения и глубины поля зрения (FOV), то расчет итогового изображения увеличится пропорционально количеству лучей, и это несмотря на мощные и современные процессоры. Другой проблемой метода трассировки лучей является сглаживание. При трассировке лучи не учитывают реальные размеры. Прямым следствием такого эффекта будет появление «лесенок», что частично можно разрешить суперсэмплингом или рендерингом в большом разрешении, но опять же необходимо помнить о медленности рендеринга.

Другим не менее мощным и прогрессивным инструментом для генерации трехмерных фракталов является программа Mandelbulber — экспериментальное приложение, разработанное для создания и работы с 3D-фракталами Мандельброта, а также с некоторыми другими видами 3D-фракталов, например Mandelbox, Bulbbox, Juliabulb, губка Менгера, Quaternion, тригонометрическими, гиперкомплексными и IFS, причем все формулы могут быть объединены в бесконечных вариациях. Особенности программы: великолепная гибкость в работе с 3D-фракталами, работа с освещением, тенями, цветом, поддержка эффектов ambient-окклюзии, глубины резкости и т.д. Неограниченное разрешение изображения на 64-битных системах. Простой в применении 3D-навигатор по фракталу. Программа поддерживает анимацию и абсолютно бесплатна. Mandelbulber, так же как и Mandelbulb 3D, использует трассировку лучей для отрисовки 3D-фракталов. Но вместо того, чтобы лучи проходили всю дистанцию между камерой и ближайшей поверхностью непрерывно, они проходят это расстояние дискретно. На каждом шагу моделируется рассеяние. Конечный результат представляет собой синтез различных состояний рассеяния вдоль всей длины луча.

Наряду с Mandelbulber и Mandelbulb 3D существует еще несколько программ, позволяющих визуализировать трехмерные фракталы, — Xenodream, Fragmentarium, Incendia, Chaoscope и др.

Хочется надеяться, что данная публикация оказалась для вас интересной, а главное — полезной. Ее целью было познакомить вас с основными и популярными сегодня программами-фракталогенераторами, а также с принципами их работы. Несмотря на ограниченное количество таких программ, возможности, которые они предлагают, практически неограниченны. Алгоритмы их работы и математический аппарат фракталов позволяют строить в этих программах самые фантастические фрактальные пейзажи, сцены и формы. И хотя большинство фракталогенераторов весьма просты в освоении, не стоит ждать, что, открыв впервые какую-нибудь программу, вы сразу сотворите в ней чудесный-расчудесный фрактал. Чтобы добиться хороших, красивых результатов в таком искусстве, как рисование фракталов, нужно терпение и много практики. Впрочем, как и везде. А посему всем удачи и творческого вдохновения в освоении программ и фрактального искусства в целом.