Алгоритм двухуровневой трассировки лучей и его развитие в Оптических элементах

( The two level ray tracing algorithm and its elaboration toward Optical elements
Preprint, Inst. Appl. Math., the Russian Academy of Science)

Барладян Б.Х., Волобой А.Г., Галактионов В.А., Шапиро Л.З.
(B.H.Barladyan, A.G.Voloboy, V.A.Galaktionov, L.Z.Shapiro)

ИПМ им. М.В.Келдыша РАН

Москва, 2008
Работа выполнена при финансовой поддержке Российского фонда фундаментальных исследований (проекты №№ 06-07-89165, 06-07-89162), а также компании INTEGRA Inc.(Япония)

Аннотация

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

Abstract

The two level ray tracing algorithm is described in the article. Its usage is important for interactive rendering of dynamic geometry. The results of rendering of dynamic scenes are discussed. Also this algorithm is effectively applied to construction of a optical simulation plugin to famous CAD system CATIA. The further elaboration of this approach resulted in Optical elements (OPTOS) concept implementation. The optical elements allow taking into account such complex physical phenomena as light polarization, volume scattering, wave effects etc. in optical simulation.

Электронная версия с цветными иллюстрациями размещена по адресу http://www.keldysh.ru/pages/cgraph/publications/cgd_publ.htm.

Содержание

 

Аннотация ………………………………………………………………………….. 2

Содержание ………………………………………………………………………… 3

1. Введение …………………………………………………………………………. 4

2. Применение двухуровневой трассировки лучей для динамического
изменения сцены
….………………………………………………………………... 6

3. Использование двухуровневой трассировки для интеграции системы
оптического моделирования с системой проектирования
CATIA………….. 12

4. Оптический Элемент, как развитие алгоритма
двухуровневой трассировки
……………………………………………………… 16

5. Заключение ……………………………………………………………………... 20

Литература ………………………………………………………………………… 20


1. Введение

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

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

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

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

Эти достоинства трассировки лучей вызывают непрекращающийся интерес к различным методам ее ускорения посредством распараллеливания алгоритма [2], использования SIMD инструкций современных процессоров [3] или графических ускорителей [4]. В результате в последнее время скорость трассировки лучей была существенно увеличена.

Использование этих методов позволяет создавать графические приложения, основанные на трассировке лучей, со скоростью генерации изображений близкой к интерактивной. Также для ускорения трассировки такие системы используют специальные алгоритмы, основанные на разбиении всего пространства сцены на множество подпространств, образуя из них линейное множество или некоторую иерархию. В итоге разбиения пространства строятся вспомогательные структуры, хранящие индексы объектов сцены, принадлежащих каждому подпространству. Эти структуры позволяют существенно ускорить процесс трассировки сцены. Существует большое множество различных видов вспомогательных структур: равномерное разбиение [5], октарные деревья, BSP и kd деревья [6]. Время, необходимое для построения таких структур, может быть существенным и иногда значительно превышать время генерации изображения для одного положения камеры.

Большое время генерации вспомогательных структур остается приемлемым пока создание изображений ограничивается статическими сценами, в которых изменяется только положение камеры или расположение источников света. Однако в современных САПР и системах высококачественной презентации продуктов [7] пользователь работает с динамическими изменяемыми сценами, когда интерактивно изменяется также и геометрия сцены. При этом для пользователя системы важным является полное время от изменения сцены до получения изображения или результата моделирования, включая время перестроения ускоряющих структур. Таким образом, задача быстрого перестроения вспомогательных ускоряющих структур становится особенно актуальной для интерактивного использования качественной визуализации или систем оптического моделирования.

Система интерактивной визуализации и оптического моделирования, разработанная в Институте прикладной математики им. М.В.Келдыша РАН, использует SIMD (SSE) инструкции для ускорения трассировки лучей [8]. Эффективная реализация SSE трассировки лучей требует ускоряющей структуры, основанной на BSP дереве. В то же время построение таких структур на основе BSP деревьев является достаточно медленной процедурой. Это существенно обострило проблему перестроения ускоряющих структур для динамически изменяемых сцен. Для решения проблемы была реализована схема двухуровневой трассировки лучей [3, 9].

В данной работе описывается предложенный авторами подход двухуровневой трассировки лучей, приводятся иллюстрации его использования на примерах динамических сцен, показывается эффективность его применения при интеграции нашей системы с известной САПР CATIA, разработанной Dassault Systems [11]. Использование двухуровневой трассировки совместно с концепцией оптических элементов [10] позволило существенно повысить эффективность процесса оптического моделирования.

 

2. Применение двухуровневой трассировки лучей для динамического изменения сцены

В большинстве современных систем визуализации элементы виртуальной сцены хранятся в структуре иерархического графа (рис. 1). Листья графа представляют объекты сцены, свойства поверхностей и материалы, источники света и т.д. Для нас важным является факт, что вся геометрия сцены состоит из объектов, которые пользователь может добавлять в сцену либо убирать из нее, передвигать в пространстве или модифицировать каким-либо образом. Эти действия применяются к одному или нескольким объектам сцены.

Рис. 1. Представление сцены в виде иерархического графа.

 

Будем говорить о верхнем (первом) и нижнем (втором) уровнях трассировки. Трассировка первого, верхнего, уровня определяет объекты сцены, с которыми возможно пересечение трассируемого луча. Для этого все объекты сцены помещаются в параллелепипеды, их ограничивающие. Организация сцены для двухуровневой трассировки проиллюстрирована на рис. 2.

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


Рис. 2. Организация сцены для двухуровневой трассировки лучей. Контурами выделены параллелепипеды, ограничивающие объекты сцены.

При изменениях сцены ускоряющие структуры модифицируются следующим образом:

·     при добавлении копии объекта в сцену модифицируется только ускоряющая структура трассировки верхнего уровня;

·     при удалении объекта из сцены модифицируется только ускоряющая структура трассировки верхнего уровня;

·     при движении объекта, его поворотах или масштабировании модифицируется только ускоряющая структура трассировки верхнего уровня;

·     при добавлении в сцену нового, уникального объекта создается его ускоряющая структура и модифицируется ускоряющая структура трассировки верхнего уровня.

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

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

Для ускорения трассировки лучей на обоих уровнях используется BSP дерево. Соответственно на обоих уровнях используется одинаковая ускоряющая структура данных и аналогичный алгоритм трассировки лучей до пересечения с объектом трассировки на данном уровне: ограничивающим параллелепипедом на верхнем уровне и объектом сцены или его примитивом на нижнем. Однако алгоритм построения дерева для каждого уровня имеет свою специфику. Если объект состоит из треугольников, то для построения BSP дерева нижнего уровня наиболее дорогостоящей процедурой является нахождение пересечения треугольника с параллелепипедом. Размеры параллелепипедов, ограничивающих треугольники, могут изменяться при этом по всем трем координатам, что в свою очередь требует сортировки возможных положений разделяющих плоскостей. При этом для построения BSP дерева верхнего уровня процедура нахождения пересечения параллелепипеда, ограничивающего объект, с параллелепипедом BSP дерева не является критической, а сортировка возможных положений разделяющих плоскостей не нужна вовсе.

Процедура построения BSP дерева верхнего уровня повторяется при каждом изменении сцены. Поэтому именно здесь желательно достичь максимального ускорения. Описанные выше упрощения существенно ускоряют эту процедуру.

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

Для динамической сцены (рис. 3), состоящей из 19 объектов (количество треугольников      137286),      полное  время генерации ускоряющих   структур составило 7.89 секунды. А время перестроения структур при изменении геометрии (например, открытие двери, как показано на рис. 3b) – менее 0.01 секунды. Времена приведены для компьютера Pentium IV, 3.2 GHz, 2 Gb RAM.

Как уже упоминалось, время перестроения ускоряющих структур возрастает с количеством объектов. Ниже приведены результаты построения ускоряющих структур для двух сцен с большим количеством объектов. Для первой сцены, состоящей из 6804 объектов (100215 треугольников), время полного создания ускоряющих структур составило 2.94 секунды, а время перестроения 0.1 секунды. Для второй, состоящей из 20968 объектов (302822 треугольников), время полного создания ускоряющих структур составило 9.55 секунды, а время перестроения – 0.25 секунды.

 

(a)

(b)

Рис. 3. Пример сцены с динамически изменяемой геометрией (в сцену заложена возможность открытия дверей и окон автомобиля, движения дворников).

 

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

 

3. Использование двухуровневой трассировки для интеграции системы оптического моделирования с системой проектирования CATIA

Проблема генерации реалистичных изображений связана не только с разработкой корректных алгоритмов визуализации. Важным аспектом реалистичности является задание детальной цифровой модели изображаемых объектов. Задание такой модели требует использования современных программ автоматизированного проектирования. Такие системы моделирования как Autodesk 3DS Max, CATIA или Maya (Alias/Wavefront) позволяют создавать «с нуля» сложные цифровые модели, полностью описывающие, например, здание со всеми помещениями и интерьерами или автомобиль в мельчайших деталях. Подобные модели насчитывают сотни тысяч и миллионы треугольников и не могут быть созданы без развитых механизмов автоматизации процесса создания таких моделей, предлагаемых современными САПР.

Однако интегрирование систем физически аккуратного моделирования распространения света (которой и является наша система), используемых для построения реалистичных изображений, с современными пакетами автоматизированного проектирования является трудной задачей. Известно несколько попыток решения этой задачи. Для системы автоматизированного проектирования CATIA V5 компанией OPTIS был выпущен встроенный модуль физически аккуратного моделирования освещенности SPEOS CAA V5 Based [12]. Компания Mental Images интегрировала свою программу моделирования освещенности со всеми наиболее известными системами автоматизированного проектирования – Autodesk 3DS MAX, Maya и CATIA (модуль Photo Studio).

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

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

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

При изменении сцены в CATIA модуль интеграции обновляет только те объекты сцены, геометрия которых была изменена или объект был целиком заменен (удален или добавлен). Геометрия остальной части сцены остается без изменения, что позволяет обновить ускоряющие структуры за существенно меньшее время, чем, если бы они создавались заново.

В такой постановке модуль, встроенный в CATIA, должен решать две задачи:

·      извлечение из CATIA данных о геометрии моделируемой сцены в виде, подходящем для последующего оптического моделирования,

·      идентификация одних и тех же геометрических объектов в CATIA и в нашей системе.

Решение первой задачи – это создание конвертера из одного геометрического представления в другое, который бы поддерживал структуру дерева сцены (документа) в CATIA. Геометрия из CATIA, включая дерево сцены, преобразуется в объекты, представленные триангулированными поверхностями с заданным уровнем разбиения.

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

На рис. 4 показан пример результатов моделирования освещенности для моделей, созданных в среде CATIA. Представлена реалистичная визуализация модели и распределение освещенности в виде тоновой заливки, созданные с помощью нашей системы, интегрированной с CATIA.

Рис. 4. Пример, иллюстрирующий интеграцию системы моделирования освещенности Inspirer2 и САПР CATIA.

Именно применение алгоритма двухуровневой трассировки позволило добиться интерактивной скорости взаимодействия САПР CATIA и нашей системы высококачественной визуализации и оптического моделирования.

 

4. Оптический Элемент, как развитие алгоритма
двухуровневой трассировки

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

Наша система использует специальные компьютерные модели оптических элементов (ОЭ) [10]. В настоящее время ОЭ позволяют моделировать светорассеивающие микроструктуры, объемное рассеяние света на микрочастицах, флуоресценцию,  поляризационное рассеивание света в тонких пленках. Моделирование учитывает волновые эффекты, спектральный состав света и его поляризацию. Система позволяет добавлять новые модели ОЭ для моделирования специфических физических эффектов, характерных для конкретного элемента. Основным требованием для интеграции является использование «лучевой оптики» на «входе» и «выходе» оптического элемента. Концепция ОЭ проиллюстрирована на рис. 5.

 

Рис. 5. Концепция оптического элемента.


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

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

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

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

Геометрия моделируемых сцен для нашей системы обычно подготавливается в различных внешних системах автоматизированного проектирования (например, CATIA) и, соответственно, модели попадают к нам в виде набора поверхностей, представленных, как правило, треугольными сетками. Специфические оптические свойства могут быть назначены для этих поверхностей (или их частей) и для среды, которые эти поверхности ограничивают. Если оптические свойства, определяющие ОЭ, назначены на поверхность, то система автоматически создает соответствующий внутренний объект, вычисляет ограничивающий его параллелепипед и включает его в общую схему трассировки как объект верхнего уровня. Моделирование рассеивающих сред осуществляется по стандартной схеме за тем исключением, что луч в такой среде может не только достичь следующей поверхности или поглотиться, но и изменить направление движения в некоторой точке между поверхностями.

Моделирование оптических элементов и рассеивающих сред в системе, использующей алгоритм двухуровневой трассировки, осуществляется следующим образом:

1.     Трассировка верхнего уровня определяет объекты сцены, с которыми возможно пересечение трассируемого луча.

2.     На втором уровне вызывается трассировщик каждого объекта, с которым потенциально возможно пересечение луча, или соответствующий ОЭ.

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

4.     Если луч поглотился, то трассировка данного луча на этом заканчивается.

5.     Если луч изменил свое направление, то управление опять передается трассировке верхнего уровня для нахождения пересечения с объектами сцены. Трассировка лучей продолжается с нового положения и в новом направлении.

6.     Если найдено пересечение с оптическим элементом, то ему передается управление. ОЭ или оптическая модель поверхности осуществляет преобразование луча. Результатом преобразования является луч с новыми координатами, направлением, цветом и поляризацией. Внутри ОЭ или на поверхности может также произойти поглощение луча.

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

 

5. Заключение

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

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

 

Литература

1. Волобой А.Г., Галактионов В.А., Машинная графика в задачах автоматизированного проектирования. «Информационные технологии в проектировании и производстве», № 1, 2006, стр. 64-73.

2. Robert Cook, Thomas Porter, and Loren Carpenter. Distributed raytracing. In ACM SIGGRAPH Computer Graphics, Volume 18, 1984, pp. 137–144.

3. Ingo Wald and Philipp Slusallek. State-of-the-Art in Interactive Ray-Tracing in State of the Art Reports, EUROGRAPHICS-2001, 2001, pp. 21-42.

4. Timothy John Purcell, Ian Buck, William R. Mark, and Pat Hanrahan. Ray tracing on programmable graphics hardware. ACM Transactions on Graphics, Volume 21, No. 3, 2002, pp. 703-712.

5. Akira Fujimoto, Tanaka Takayuki, Iwata Kansei. ARTS: Accelerated Ray-Tracing System, IEEE Computer Graphics and Application, Volume 6, No. 4, 1986, pp.16-26.

6. Andrew Glassner. An Introduction to Raytracing. Academic Press, 1989.

7. Terminal V. Virtual Reality Center. http://www.vr-center.at

8. A. Adinetz, B. Barladian, V. Galaktionov, L. Shapiro, A. Voloboy, Physically Accurate Rendering with Coherent Ray Tracing. Proceeding of GraphiCon’2006 - The 16-th International conference of Computer Graphics and Applications, 2006, pp. 8-15.

9. A. Reshetov, A. Soupikov, and J. Hurley, Multi-level ray tracing algorithm. ACM Transactions on Graphics, Volume 24, No. 3, 2005, pp. 1176-1185.

10. А.Г. Волобой, В.А. Галактионов, Д.Д. Жданов, Технология оптических элементов в компьютерном моделировании оптико-электронных приборов. «Информационные технологии в проектировании и производстве» № 3, 2006, стр. 46-56.

11. Dassault Systems, http://www.3ds.com

12. Гольдовский П., Кокова А.,  Моделирование оптических явлений и свойств задаваемых изделий. «САПР и графика», №8, 2004, с. 46-47.