CS255. Computer Graphics Introduction Course: Global Illumination & Ray Tracing
CS255. Computer Graphics Introduction Course: Global Illumination & Ray Tracing
CS255. Computer Graphics Introduction Course: Global Illumination & Ray Tracing
Software department
2 10.11.2014
История возникновения ГО
в важнейших публикациях (2)
1980 BSP trees (Fuchs, H. Kedem, Z.M. Naylor, B.F. (1980). On visible surface generation by a
priori tree structures. Computer Graphics (Proceedings of SIGGRAPH 1980) 14 (3), 124—133.)
1980 Ray tracing (Whitted, T. (1980). An improved illumination model for shaded display.
Communications of the ACM 23 (6), 343—349.)
1981 Cook shader (Cook, R.L. Torrance, K.E. (1981). A reflectance model for computer graphics.
Computer Graphics (Proceedings of SIGGRAPH 1981) 15 (3), 307—316.)
1983 Mipmaps (Williams, L. (1983). Pyramidal parametrics. Computer Graphics (Proceedings of
SIGGRAPH 1983) 17 (3), 1—11.)
1984 Octree ray tracing (Glassner, A.S. (1984). Space subdivision for fast ray tracing. IEEE
Computer Graphics & Applications 4 (10), 15—22.)
1984 Alpha compositing (Porter, T. Duff, T. (1984). Compositing digital images. Computer Graphics
(Proceedings of SIGGRAPH 1984) 18 (3), 253—259.)
1984 Distributed ray tracing (Cook, R.L. Porter, T. Carpenter, L. (1984). Distributed ray tracing.
Computer Graphics (Proceedings of SIGGRAPH 1984) 18 (3), 137—145.)
1984 Radiosity (Goral, C. Torrance, K.E. Greenberg, D.P. Battaile, B. (1984). Modelling the
interaction of light between diffuse surfaces. Computer Graphics (Proceedings of SIGGRAPH 1984) 18
(3), 213—222.)
1985 Hemi-cube radiosity (Cohen, M.F. Greenberg, D.P. (1985). The hemi-cube: a radiosity
solution for complex environments. Computer Graphics (Proceedings of SIGGRAPH 1985) 19 (3), 31—
40.)
3 10.11.2014
История возникновения ГО
в важнейших публикациях (3)
1986 Light source tracing (Arvo, J. (1986). Backward ray tracing. SIGGRAPH 1986
Developments in Ray Tracing course notes)
1986 Rendering equation (Kajiya, J.T. (1986). The rendering equation. Computer Graphics
(Proceedings of SIGGRAPH 1986) 20 (4), 143—150.)
1987 Reyes algorithm (Cook, R.L. Carpenter, L. Catmull, E. (1987). The Reyes image rendering
architecture. Computer Graphics (Proceedings of SIGGRAPH 1987) 21 (4), 95—102.)
1991 Hierarchical Radiosity (Hanrahan, P. Salzman, D. Aupperle, L. (1991). A rapid hierarchical
Radiosity algorithm. Computer Graphics (Proceedings of SIGGRAPH 1991) 25 (4), 197—206.)
1993 Tone mapping (Tumblin, J. Rushmeier, H.E. (1993). Tone reproduction for realistic
computer generated images. IEEE Computer Graphics & Applications 13 (6), 42—48.)
1993 Subsurface scattering (Hanrahan, P. Krueger, W. (1993). Reflection from layered surfaces
due to subsurface scattering. Computer Graphics (Proceedings of SIGGRAPH 1993) 27 (), 165—
174.)
1995 Photon mapping (Jensen, H.J. Christensen, N.J. (1995). Photon maps in bidirectional
Monte Carlo ray tracing of complex objects. Computers & Graphics 19 (2), 215—224.)
1997 Metropolis light transport (Veach, E. Guibas, L. (1997). Metropolis light transport.
Computer Graphics (Proceedings of SIGGRAPH 1997) 16 65—76.)
4 10.11.2014
Световые эффекты.
Проблемы моделирования. Глобальное освещение
Воздух, заполненный
капельками воды, пылью или
Каустики и дымом, представляет собой
godrays объемную среду, с которой
свет активно взаимодействует:
Интерференция Радуга:
рефракция
и полное
внутреннее
Рассеивание света отражение
в капле
Освещение
отраженным светом
(непрямое, radiosity) HDR
5 10.11.2014
Световые эффекты.
Проблемы моделирования. Глобальное освещение
6 10.11.2014
Прямое и непрямое освещение.
Основное уравнение освещенности
Световая энергия, которая излучается в точке x' в направлении другой точки x'‘ - это
сумма отраженной энергии и энергии излучаемой точкой самостоятельно.
Должны быть учтены все лучи, которые пришли в эту точку от всех точек х интеграл.
L( x' x' ' ) E ( x' x' ' ) f r ( x, x' , x' ' ) L( x x' )V ( x, x' )G ( x, x' )dx
x
7 10.11.2014
Основное уравнение освещенности
L ' L k d L N k s R V
n
L ' L Refl (, ' )
cos d
L ' Refl ( , ' ) L
cos d
Refl ( , ' )
L ' L cos d
cos d Thomas Funkhouser
Princeton University,
C0S 526, Fall 2002
9 10.11.2014
Проблема реального
времени и подходы к
упрощению основного
уравнения освещенности
Ray tracing
Method Description/Notes
1980. Several enhanced variants exist for solving problems related to sampling,
Ray tracing
aliasing, soft shadows: Distributed ray tracing, Cone tracing, Beam tracing.
Path tracing 1986-1995. Unbiased, Variant: Bi-directional Path Tracing
1995. Biased; enhanced variants: Progressive Photon Mapping, Stochastic
Photon mapping
Progressive Photon Mapping
Radiosity 1984-1999. Finite element method, very good for precomputations.
Metropolis light
1997. Builds upon bi-directional path tracing, unbiased
transport
Spherical harmonic
Encodes global illumination results for real-time rendering of static scenes
lighting
Not a physically correct method, but gives good results in general. Good for
Ambient occlusion
precomputation.
10 10.11.2014
Трассировка лучей (Ray tracing)
Прямая и обратная трассировка
Классический ray tracing (Ray casting), или метод трассировки лучей, предложен
Артуром Аппелем (Arthur Appel) в 1968 году и дополнен алгоритмом общей рекурсии,
разработанным в 1980 году Т.Уиттедом (T. Whitted). Понадобилось почти 12 лет
эволюции вычислительных систем, прежде чем этот алгоритм стал доступен для
широкого применения в практических приложениях.
Path tracing и Ray tracing по Thomas Funkhouser (Princeton University, C0S 526, Fall
2002).
11 10.11.2014
Алгоритмы глобального освещения
Метод обратной трассировки
(от точки наблюдения)
Обратная трассировка. Метод разработан в 80-х годах. Основополагающими
считают работы Уиттеда (T. Whitted,1980) и Кея (T. Kay, 1986).
Диффузно
отражающий
объект
препятствие
Пояснение:
Луч t – преломленный;
Луч r – отраженный;
Направление
от наблюдателя
на пиксел
12 10.11.2014
Метод обратной трассировки
Ограничения метода
Ограничения метода
1.Выделяют источники света. Они могут только излучать, но не отражать и
преломлять. Ограничивают многообразие источников точечными.
2.Свойства отражающих поверхностей задаются суммой диффузной и зеркальной
компонент
3.Зеркальность описывается составляющими reflection и specular. Reflection
учитывает отражение других объектов не являющихся источниками. Строится
только 1 зеркально отраженный луч r для дальнейшей трассировки. Specular дает
световые блики от источников. Для этого определяются углы отраженного луча
обратной трассировки со всеми источниками.
4.При диффузном отражении учитываются только лучи от источников света (от
зеркал игнорируются)
5.Для прозрачных (transparent) объектов обычно не учитываются зависимость
преломления от . Иногда прозрачность моделируется без преломления.
6.Для учета освещенности объектов светом, рассеиваемым другими объектами
вводится фоновая составляющая (ambient)
7. Завершают трассировку либо по числу итераций, либо по величине
приращения освещенности, оказавшейся на данной итерации ниже пороговой
13 10.11.2014
Сравнение возможностей трассировки
лучей и моделей глобального освещения
Источник: Wikipedia
15 10.11.2014
Метод обратной трассировки Intel algorithm MLRTA
Базовая операция. Алгоритм
Базовая операция обратной трассировки – вычисление интенсивности луча:
ЛУЧ(номер итерации ind, тип луча, направление луча dir, номер объекта no) {
Находим точку пересечения луча с ближайшим объектом (гранью); Если точка найдена, то
{ no=номер пересекаемого объекта; // использовать метод оболочек
Вычисляем нормаль к видимой стороне пересекаемой грани;
Если (kd > 0), то // задано свойство диффузного отражения
{Ld=Сумма интенсивности диффузного отражения для всех источников;}
Если (ks > 0), то // зеркальные блики от источников света
{Определяем направление отраженного луча dirR;
Ls=Интенсивность зеркального блика с учетом для всех источников;}
Если (kr > 0), то // зеркальное отражение других объектов
{Определяем направление отраженного луча dirR;
Lr=ЛУЧ(ind+1, отраженный, dirR, no);} // рекурсия
Если (kt > 0), то // объект полупрозрачный
{Определяем направление преломленного луча dirT;
Lt=ЛУЧ(ind+1, преломленный, dirT, no);} // рекурсия
return ka La C+ kd Ld C+ ks Ls + kr Lr + kt Lt ; // k,L и C - вектора (для RGB)
}
иначе {Луч уходит в свободное пространство; return Значение по умолчанию (цвет фона)}}
16 10.11.2014
Проблема реального времени и подходы к
упрощению основного уравнения освещенности
17 10.11.2014
Проблема реального времени и подходы к
упрощению основного уравнения освещенности
Результаты трассировки лучей на процессоре Core 2 Duo, полученные стажерами Зимней школы 2008 по компьютерной
графике (Intel-ННГУ). 512x512pix. Время – порядка 1 мин.
18 10.11.2014
Метод Radiosity
После принятия такого упрощения мы можем вынести функцию BRDF из-под знака интеграла, т.к.
она будет постоянной. В результате имеем основное уравнение Radiosity:
19 10.11.201
4
Метод Radiosity
Процедура:
•После разбиения поверхностей 3D сцены на дискретные элементы, в один проход по
стандартным алгоритмам рассчитываем первичную освещенность поверхностей от всех
источников света. После этого знаем, какая энергия источников света приходится на каждую
точку лайтмэпа.
•Затем, собственно, само Radiosity: представив, что каждый элемент является самостоятельным
источником световой энергии, которую он получил от первичных источников света,
рассчитываем вторичную освещенность, т.е. учитываем влияние одних элементов на другие.
Затем, учитывая поглощение, проход за проходом рассчитываем переизлучение световой
энергии между поверхностями сцены до тех пор, пока не установится равновесие.
Radiosity
• Рассчитывает диффузное переотражение от поверхностей (один раз для каждого нового
положения источников света)
• Производит независимые решения, для быстрой визуализации из любой точки обзора
• Предлагает непосредственные визуальные эффекты
• 3D-сетка требует больше памяти ,чем оригинальные поверхности
• Алгоритм дискретизации поверхности более восприимчив к артефактам, чем ray tracing
• Не работает с эффектами отражения или прозрачности
21 10.11.201
4
Метод фотонных карт
1996 Henrik Wann Jensen
22 10.11.201
4
Метод фотонных карт
1996 Henrik Wann Jensen
23 10.11.201
4
Подходы к упрощению основного
уравнения освещенности
24 10.11.2014
Подходы к упрощению основного
уравнения освещенности
25 10.11.2014
Примеры изображений…
26 10.11.201
Нижний Новгород, 2008 г.
http://graphics.ucsd.edu/~henrik/images/cbox.html Прямая трассировка лучей 26
4
Примеры изображений…
27 10.11.201
Нижний Новгород, 2008 г.
http://graphics.ucsd.edu/~henrik/images/cbox.html Прямая трассировка лучей 27
4
Распространение света в материалах
(subsurface scattering, translucent)
В компьютерной графике во многих случаях принимается, что взаимодействие света с
непрозрачными объектами определяются исключительно свойствами поверхности
материалов, т.е. BRDF. В реальности свет проникает на некоторую глубину объема в
некоторой точке поверхности, взаимодействует с материалом внутри объема и выходит
через поверхность наружу в другой точке. При этом меняется интенсивность и цвет
отраженного света. Это физическое явление получило название подповерхностного
переноса света – subsurface scattering или translucency.
29 10.11.2014
Более полная модель
распространения света
Transmitted Light
30 10.11.2014
Источники
1. Radiosity OverView. Part 1/ Reference: SIGGRAPH 1993 Education Slide Set, by Stephen Spencer
2. Cohen M.F., Wallace J.R. Radiosity and realistic image synthesis.1995. 412p. (PDF)
3. Ray Tracing - SIGGAPH www.siggraph.org/education/materials/HyperGraph/raytrace/rtrace0.htm
4. Advanced Ray Tracing Techniques /SIGGAPH, 1999
http://www.siggraph.org/education/materials/HyperGraph/raytrace/rtrace0.htm
5. Henrik Wann Jensen: "Global Illumination using Photon Maps". In "Rendering Techniques '96". Eds. X.
Pueyo and P. Schröder. Springer-Verlag, pp. 21-30, 1996. Click here to download a slightly extended
1.3MB pdf version of the paper
6. Thomas Funkhouser. Global Illumination/ Princeton University. C0S 526, Fall 2002
7. Zack Waters. Photon mapping introduction /Worcester Polytechnic Institute. 2002
8. Alexander Reshetov, Alexei Soupikov, Jim Hurley. Multi-Level Ray Tracing Algorithm / Intel Corporation
(PDF)
9. Chris Wynn. An Introduction to BRDF Based Lighting/ NVIDIA Corporation BRDF-based Lighting:
www.developer.nvidia.com/object/BRDFbased_Lighting.html, 2004
10. Henrik Wann Jensen. Realistic Image Synthesis Using Photon Mapping. 2nd Print. March 2005. Publisher:
AK Peters. ISBN: 1568811470
11. Ю.М. Баяковский, В.А. Галактионов. Современные проблемы компьютерной (машинной)
графики. 2001 (pdf)
12. Е.В.Шикин, А.В.Боресков. Компьютерная графика. М., «Диалог-МИФИ», 2001
31 10.11.2014