Sunflow

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Sunflow
Тип

Трассировщик лучей

Разработчик

Christopher Kulla

Операционная система

Кроссплатформенный

Последняя версия

0.07.2 (7 февраля 2007 года)

Лицензия

GNU Lesser General Public License

Сайт

http://sunflow.sourceforge.net/


Sunflow — это система рендеринга с использованием глобального освещения для создания фото-реалистичных изображений.

Входит в число наиболее известных открытых программ-визуализаторов трехмерных сцен[1], может, в качестве внешнего рендерера, использоваться совместно с BlenderБен Харлинг Blender 2.42a // LinuxFormat. — 2010. — № 11 (85). — С. 16..

Написанная на Java, она построена на гибком ядре рейтрейсинга. Была создана для экспериментирования с глобальным освещением и новыми моделями затенения поверхностей.

Краткий обзор возможностей освещения и рендеринга:

  • Прямое освещение с мягкими тенями от area lights
  • Адаптивная выборка источников area light
  • Эфект глубины резкости (Depth of field)
  • Camera motion blur
  • Мультипоточность
  • Photon Mapping (для глобального освещения и каустики)
  • Компиляция шейдеров (Janino)
  • Lazy processing of tesselation, acceleration structure building and texture loading
  • Генерация карт освещености (render to texture)
  • Instancing (many copies of the same object take up very little additional memory)
  • Bucket renderer
    • Адаптивный анти-алиасинг (over and under sampling)
    • Bucket based rendering (programmable ordering)
    • Мультипиксельная фильтрация изображения
  • Прогресивный рендерер (для превью)

Основные возможности

  • форматы импорта: Autodesk 3ds Max, Autodesk Maya, Blender, Softimage XSI, Cheetah3D
  • Выходные форматы: HDR, PNG, TGA, OpenEXR (tiled only)
  • Наложение текстур (JPG, PNG, TGA, HDR loaders)
  • наложение рельефа
  • наложение высот

Возможности[править | править вики-текст]

Примитивы
  • Треугольная сетка
  • Кривые «волос»
  • Круг
  • Сфера
  • Banchoff поверхность
  • Кривые Безье (втроеные модели чайника и gumbo) — разбиваемые на треугольники при необходимости
  • бесконечная плоскость
  • Cube-grid (eg: Menger Sponge)
  • Cornell Box
  • поверхности из частиц (large sets of spheres)
Обективы камеры
ускорители пересечения луча
  • kd-дерево
  • Регулярная сетка
  • Иерархия ограничивающих объёмов(BVH)[2]
  • Null (Для простых сцен)
Шейдеры поверхностей
  • Diffuse(Рассеяние света попадающего на поверхность)
  • Mirror(Отражение света попадающего на поверхность)
  • Glass (с поглощением)
  • Phong (С каустиками)
  • Ambient occlusion (имитация глобального освещенияГлобальное_освещение)
  • Shiny diffuse
  • Anisotropic ward
  • Каркас
  • Програмнный (на Java — компилируется во время загрузки сцены)
Модификаторы поверхностей
Источники света
  • Точечный источник света
  • Directional spotlight
  • Triangle area light (paper)
  • Image-based infinite area light
  • Physically based sun/sky system (paper)
Photon mapping engines
  • KD-Tree
  • Grid based
Image filters
  • Box
  • Triangle
  • Gaussian
  • Blackman Harris
  • Catmull-Rom
  • Mitchell
  • Lanczos
  • Sinc
Bucket orderings
  • Hilbert
  • Spiral
  • Row
  • Column
  • Diagonal
  • Random
Global illumination engines
  • Irradiance caching
  • «Instant GI» — based on «Illumination in the Presence of Weak Singularities» (Thomas Kollig, Alexander Keller)
  • Path tracing
  • Fake ambient term
  • Ambient occlusion
Backend
  • Полностью расширяемая архитектура. Можно настроить почти каждый параметр рендера.
  • Возможности расширяемые пользователем представлены как интерфейсы.
  • Простой API для процедурного создания сцен.
  • Написано на чистом Java
  • Простой Swing GUI с отображением визуализации изображения и консолью.

Ссылки[править | править вики-текст]

  1. Андрей Прахов В поисках 3D-редакторов // LinuxFormat. — 2010. — № 7 (133). — С. 47.
  2. BVH-tree