Научная статья на тему 'Обобщение метода излучательности на двунаправленные функции отражательной способности глянцевых материалов'

Обобщение метода излучательности на двунаправленные функции отражательной способности глянцевых материалов Текст научной статьи по специальности «Математика»

CC BY
103
20
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по математике, автор научной работы — Щербаков А.С., Фролов В.А.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Обобщение метода излучательности на двунаправленные функции отражательной способности глянцевых материалов»

Обобщение метода излучательности на Двунаправленные Функции Отражательной способности глянцевых материалов

Щербаков А. С.(2). alex.shcherbakov@graphics.cs.msu.ru, Фролов В. А.(1,2) . vova@frolov.pp.ru (1) ИПМ им. М.В. Келдыша РАН. МГУ имени М.В, Ломоносова

Аннотация

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

1 Введение

Проблема глобальной освещённости возникает при решении широкого круга задач компьютерной графики, проектирования архитектурных сооружений, оптического моделирования, компьютерной анимации и виртуальной реальности. Вычисление глобального освещения - трудоёмкий процесс, поскольку известный интеграл освещённости (рис. 1, [Kajiya. 1986]) в действительности является многомерным. Значения функции L в одной точке трёхмерной сцены зависят от значений самого интеграла I в других точках этой же сцены (подобную зависимость называют уравнением Фредгольма второго рода).

I ( j ,q ) = jj L(j ,q )Rj ,q, j ,q )cos(n, j )djdq

j q

Рис. 1. Интеграл освещённости.

Из-за того, что задача точного вычисления глобального освещения чрезвычайно ресурсоёмка, в алгоритмах интерактивной компьютерной графики применяют различные упрощения. Например, метод излучательности [Goral et. All 1984], являющийся на сегодняшний день одним из лидеров глобального освещения в интерактивной компьютерной графике благодаря высокой точности [Martin 2010; Scherbakov, Frolov 2017], представляет трёхмерную сцену в виде небольшого количества площадок, равномерно рассеивающих

свет во все стороны (модель Ламберта). Несмотря на богатую историю, метод излучательности, наряду с некоторыми другими методами, которые мы далее будем рассматривать, имеет существенное преимущество перед остальными популярными методами интерактивного глобального освещения - это вынос наиболее трудоёмких вычислений на этап перерасчёта. Именно это является ключевым преимуществом излучательности, позволяющим выиграть в точности у многих более современных методов.

2 Предыдущие работы

Оригинальный метод излучательности [Goral et. All 1984] представляет сцену как набор равномерно рассеивающих (по закону Ламберта) свет площадок. Причём, для каждой пары площадок заранее пред-рассчитывается т. н. форм-фактор Fj — число, которое показывает, какой процент энергии, излучаемой c площадки i переходит на площадку j. Форм-факторы зависят, таким образом, исключительно от геометрических характеристик сцены. Такая постановка проблемы глобального освещения позволяет свести решение уравнение рендеринга (рис. 1) к решению СЛАУ из N уравнений с N неизвестными, где N - число площадок. Используя далее оптимизированные реализации известных методов линейной алгебры (например, LU-разложение), можно получить решение за N2 + O(N) арифметических операций.

Следует отметить, что помимо непосредственного решения СЛАУ существуют и другие быстрые методы реализации излучательности. Например, в [Scherbakov, Frolov 2017] использовался пред-рассчитанный матричный полином, в котором отражательная способность материала переносилась внутрь матрицы форм-факторов, что позволило вместо LU-разложения использовать более простую операцию единственного умножения матрицы на вектор для получения конечного результата.

Метод мгновенной излучательности (Instant Radiosity) [Keller. 1997; Будак и Желтов 2012], несмотря на своё название, не имеет ничего общего с оригинальным методом излучательности. Идея "мгновенной излучательности" в том, чтобы представить вторичного освещение как освещение от вспомогательных источников света, которые расставляются по сцене при помощи трассировки лучей. Развитием метода мгновенной излуча-тельности в современных интерактивных приложениях можно считать алгоритм Reflective Shadow Maps (RSM) [Dachsbacher and Stamminger 2005], в котором для создания вторичных источников вместо трассировки лучей используются аппаратно-ускоренные карты теней, а вторичные тени не учитываются. Мгновенная излучательность в том или ином виде широко используется в современных компьютерных играх из-за простоты и универсальности: метод не требует пред-просчёта или каких-либо дополнительных структур данных. Фатальным недостатком метода является его низкая точность.

Алгоритм Light Propagation Volumes [Kaplanyan and Dachsbacher 2010] также использует идею создания вторичных источников света, но вместо непосредственного расчёта освещения от них далее производится распространение света по трёхмерной сетке. Фактически, LPV - это в некотором смысле сеточный метод решения уравнения рендеринга (рис. 1). Наиболее существенный недостаток LPV --- это неудачный баланс в соотношении (1) точности и (2) скорости + потребляемой памяти. При небольшом размере сетки метод работает не лучше мгновенной излучательности, а при большом размере сетки занимает много памяти и работает медленно, поскольку как вычислительная сложность, так и затраты памяти в LPV растут пропорционально O(N3) где N - число воксе-лей (узлов сетки).

Следующим шагом, позволяющим избежать O(N3) можно назвать метод Voxel Cone Tracing (VCT) [Crassin et. All 2011]. Данный метод использует разряженную воксельную сетку и сбор освещённости при помощи трассировки конусов. Геометрический конус в методе VCT в действительности не трассируется, а получается неявно благодаря выборкам из разных мип-уровней (увеличивается с расстоянием) во время марширования по лучу (ray marching). Мип-уровни трёхмерной текстуры (сетки) — краеугольный камень алго-

ритма VCT, поскольку за счёт них реализуется т. н. пред-интегрирование освещённости. Более грубые мип-уровни сохраняют в себе освещение сразу с нескольких поверхностей, благодаря чему одна текстурная выборка собирает освещение сразу по обоасти и, таким образом, достигается ускорение.

Пред-интегрирование и пред-расчёт - основные концепции интерактивной глобальной освещённости. Метод сферических гармоник [Green 2003] для этого использует разложении функции падающего освещения в некоторой точке (обычно в вершинах 3D модели) по базису более простых функций. Точки с сохранёнными коэффициентами обычно называются пробами (light-probes). Итоговое вычисление освещения в точке с разложенной в ней функцией освещенности сводится к скалярному произведению векторов состоящих из коэффициентов функции освещённости в данной точке и вектора коэффициентов функции освещения из источника. Сферические гармоники позволяют эффективно и точно аппроксимировать освещение от HDR панорамы для открытых сцен, но плохо подходят для расчёта освещения в помещениях, давая низкую точность и артефакты. Развитием методов на основе проб можно считать методы из работ [Sloan et. all 2002; Papaioannou 2011; McGuire et. All 2017]. Отдельно следует упомянуть работу [Ren et. All 2013], которая использует машинное обучение. Хотя данные методы по смыслу очень близки излучательности т.к. используют пред-просчёт, мы не будем их детально рассматривать т.к. они слабо коррелируют с нашей работой.

2.1 Развитие метода излучательности

Впервые расширение метода излучательности на недиффузные поверхности было предложено в работе [Immel et. All 1986], где для каждой площадки дополнительно сохраняе-стя полукуб, в котром записана излучаемая в разных направлениях энергия. Во время рен-дера финального изображения для получения зеркальной компоненты производится операция выборки по таблице (look-up) для каждого видимого патча, учитывая направление на наблюдателя. Данный метод имеет ряд ограничений. Во-первых, он адаптирован только для работы с направленными, статичными источниками света, и учитывает только первый отскок (больше отскоков можно получать, комбинируя его с трассировкой лучей).

Во-вторых, спекулярная составляющая освещения существенно дискретизируется. Идея, описанная в работе [Immel et. All 1986], несмотря на свою ограниченность, получила дальнейшее развитие в работах [Gautron et. all 2005; Scherzer et. all 2012], где строится так называемый кэш падающей освещённости (Radiance Cahce) в небольшом количестве точек сцены точек сцены, а между точками результат интерполируется. Авторы [Sillion et. All 1991] развили подход из [Immel et. All 1986], используя для размытых глянцевых отражений сферические гармоники (что позволило существенно сократить объем необходимой памяти), а для отражений близких к зеркальным трассировку пучков. Пучком называется множество лучей, проходящих через некоторую площадку, но имеющих одинаковое направление. Авторы работы [Leiss et. All 2000] далее развивают идею трассировки пучков, обобщая её на преломления.

2.2 Выводы по предыдущим работам

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

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

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

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

3 Предлагаемый подход

Предложенный метод выводится при помощи изменения преобразования уравнения освещённости в классическое уравнение излучательности. Он также базируется на аппроксимации сцены площадками конечной площади, но, в отличие от излучательности, не делается предположение о том, что материал имеет только диффузную составляющую отражения света (рис. 1).

Рис. 1. В классическом методе излучательности предполагается, что поверхность отражает свет во все стороны одинаково. Таким образом на освещение площадки влияет только количество пришедшего света (слева). В предложенном методе (спарава) учитывается спекулярная составляющая освещения. Поэтому на освещённость площадки для заданного положения камеры влияет не только

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

Рассмотрим следующее уравнение: LO ( х, v ) =

Le (х,v) + Jp(х, l, v) • L (х, l) •(—1, n^ • dw

W

х - точка поверхности

V - направление на наблюдателя

I - направление в точку х из источника света п - нормаль в точке х

Е° (х, V) - освещение из точки х в направлении V

ЕЕ ( х , V ) - собственная светимость точки х в направлении V

О - полусфера в точке х соответствующая нормали п

р (х, I, V) - ДФОС

Е (х, I) - освещение пришедшее в точку х из источника света

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

Е° (х, V) =

. _ _ (-I,п )■(I,п >

ЕЕ(х,V) + Г р(х,I,V)■ Е°(у,I)^-^—^■ йЛ

J г 2

уе.?

у - точка, по которой берется интеграл О = ^1, п^ - угол между точкой интегрирования у и нормалью в ней пу

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

L (v) = — J LO (x, v) • dx

Ai yePi

Lf (v) =A Jle(x, v) • dx

i yePi

N 1

LO (v) = LE (v) + £ -L •

j=I A i

Г Г - O - (" l, (l, ny ) J Jp(x,l, v) • LO (l) • V(x,y)-^-—dxdy

xePi yePi Г

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

В нём форм-факторы принимают следующий вид:

(V) =

— J Jр(x,l,v) V(x,y)

(-1, rix) ■(!, ny)

dx • dy

i xe Pi ye Pi

Уравнение излучательности принимает стандартный вид, за исключением функциональной природы его компонент:

N _

LO (v ) = LE (v ) + £ F (v )• LO (!)

j=i

Форм-факторы в данном виде можно разделить на две компоненты: представление двунаправленной функции отражательной способности и стандартные форм-факторы.

-рук » Fj р(x,!,v) = P(x,J J V(x,^l",^x)• (l~,Пу)

A,

xePi yePi

При этом ДФОС дискретизируется:

р(х 1, V ) » р1]к где j - площадка, с которой приходит свет, i -отражающая площадка, к - площадка, на которую приходит свет. При переходе к дискретному переносу света на между площадками, величинам в уравнении добавляется ещё одна размерность:

N

Е°к = ЕЕк + 2

}=I

Или в матричном виде:

Е° = ЕЕ + (ро ^) ГЕ°

4 Эффективность и оптимизации

Асимптотическая сложность предложенного метода °(п3). Это существенно больше, чем у обычного метода излучательности °(п2). Данный факт накладывает ограничения как на скорость вычислений, так и на требуемую память. Тем не менее, разделение ДФОС

2

r

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

4.1 Оптимизации памяти

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

4.2 Оптимизации вычислений

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

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

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

4.4 Результаты и выводы

На рис. 3 изображён результат нашего метода, демонстрирующий его работоспособность в сравнении с эталоном (рис. 1), полученным при помощи трассировкой путей. Зеркальный куб создаёт так называемые каустики.

Рис. 2. Изображение, полученное трассировкой путей (эталон).

Рис. 3. Изображение, полученное предложенным методом. Положение и характер каустиков совпадают. Время рассёта — 4 секунды на CPU Intel Core i3 3.2 Ghz с учётом реализации оптимизаций по пункту 4.2.

Список литературы

James T. Kajiya. 1986. The rendering equation. In Proceedings of the 13th annual conference on Computer graphics and interactive techniques (SIGGRAPH '86), David C. Evans and Russell J. Athay (Eds.). ACM, New York, NY, USA, 143150. D0I=http://dx.doi.org/10.1145/15922.15902

Cindy M. Goral, Kenneth E. Torrance, Donald P. Greenberg, and Bennett Battaile. 1984. Modeling the interaction of light between diffuse surfaces. In Proceedings of the 11th annual conference on Computer graphics and interactive techniques (SIGGRAPH '84), Hank Christiansen (Ed.). ACM, New York, NY, USA, 213-222. D0I=http://dx. doi.org/10.1145/800031. 808601

Sam Martin, Per Einarsson (DICE). 2010. A Real Time Radiosity Architecture for Video Games. // Industrical presentation at Siggraph 2010.

Scherbakov A., Frolov V. Accelerating radiosity on gpus // WSCG'2017 Full papers proceedings. — 2701. — Computer Science Research Notes 2701 Pilsen, Czech Republic, 2017. — P. 99-105.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Alexander Keller. 1997. Instant radiosity. // In Proceedings of the 24th annual conference on Computer graphics and interactive techniques (SIG-GRAPH '97). ACM Press/Addison-Wesley Publishing Co., New York, NY, USA, 49-56. D0I=http://dx.doi.org/10.1145/258734.258769

В. П. Будак, В. С. Желтов. 2012., Т. К. Калакуцкий. Локальные оценки метода Монте-Карло в решении уравнения глобального освещения с учетом спектрального представления объектов. Москва. Компьютерные исследования и моделирование 2012. Т. 4 №1 С. 75-84.

Carsten Dachsbacher and Marc Stamminger. 2005. Reflective shadow maps. // In Proceedings of the 2005 symposium on Interactive 3D graphics and games (I3D '05). ACM, New York, NY, USA, 203-231.

Anton Kaplanyan and Carsten Dachsbacher. 2010. Cascaded light propagation volumes for real-time indirect illumination. In Proceedings of the 2010 ACM SIGGRAPH symposium on Interactive 3D Graphics and Games (I3D '10). ACM, New York, NY, USA, 99-107.

D0I=http://dx.doi.org/10.1145/1730804.1730821

Cyril Crassin, Fabrice Neyret, Miguel Sainz, Simon Green, and Elmar Eiseman. 2011. Interactive indirect illumination using voxel-based cone tracing: an insight. // In ACM SIGGRAPH 2011 Talks (SIGGRAPH '11). ACM, New York, NY, USA, Article 20, 1 pages.

Green, R. 2003. Spherical harmonic lighting: The gritty details. In Game Develop-pers' Conference. 2003.

Peter-Pike Sloan, Jan Kautz, and John Snyder. 2002. Precomputed radiance transfer for real-time rendering in dynamic, low-frequency lighting environments. In Proceedings of the 29th annual conference on Computer graphics and interactive techniques (SIGGRAPH '02). ACM, New York, NY, USA, 527-536.

D01=http://dx.doi.org/10.1145/566570.566612

Georgios Papaioannou. 2011. Real-time diffuse global illumination using radiance hints. In Proceedings of the ACM SIGGRAPH Symposium on High Performance Graphics (HPG '11), Stephen N. Spencer (Ed.). ACM, New York, NY, USA, 15-24. DOI: https://doi.org/10.1145/2018323.2018326

Morgan McGuire, Mike Mara, Derek Nowrouzezah-rai, and David Luebke. 2017. Real-time global illumination using precomputed light field probes. In Proceedings of the 21st ACM SIGGRAPH Symposium on Interactive 3D Graphics and Games (I3D '17), Stephen N. Spencer (Ed.). ACM, New York, NY, USA, Article 2, 11 pages. DOI: https://doi.org/10.1145/3023368.3023378

Peiran Ren, Jiaping Wang, Minmin Gong, Stephen Lin, Xin Tong, and Baining Guo. 2013. Global illumination with radiance regression functions. ACM Trans. Graph. 32, 4, Article 130 (July 2013), 12 pages. DOI:

https://doi.org/10.1145/2461912.2462009

David S. Immel, Michael F. Cohen, and Donald P. Greenberg. 1986. A radiosity method for nondiffuse environments. In Proceedings of the 13th annual conference on Computer graphics and interactive techniques (SIGGRAPH '86), David C. Evans and Russell J. Athay (Eds.). ACM, New York, NY, USA, 133-142.

D0I=http://dx. doi.org/10.1145/15922.15901

Sillion, F., Arvo, J., Westin, S., Greenberg, D., P.: A global illumination solution for general reflectance distributions. In Computer Graphics SIGGRAPH '91, 25(4), 187-196, ACM SIGGRAPH New York, 1991

Thomas Leiss., Peter Ferschin., Werner Purgathofer. 2000. Radiosity with Textures, Specular Reflexion and Transmission.

Donald P. Greenberg. 1999. A framework for realistic image synthesis. // Commun. ACM 42, 8 (August 1999), 44-53.

P. Gautron, S. Pattanaik, J. Krivanek and K. Boua-touch. 2005. Radiance Caching for Efficient Global Illumination Computation. // in IEEE Transactions on Visualization & Computer Graphics, vol. 11, no. , pp. 550-561, 2005.

Daniel Scherzer, Chuong H. Nguyen, Tobias Ritschel, Hans-Peter Seidel. 2012. Pre-convolved Radiance Caching. Computer Graphics Forum 31(4) (Proc. EGSR 2012), 2012.

i Надоели баннеры? Вы всегда можете отключить рекламу.