3d-графика. ЗИЛ

94
Высшая школа экономики, Москва, 2013 www.hse.ru ИСТОРИЯ 3D-ГРАФИКИ Соболевский Алексей

Upload: -

Post on 27-Jul-2015

23 views

Category:

Education


0 download

TRANSCRIPT

Высшая школа экономики, Москва, 2013www.hse.ru

ИСТОРИЯ 3D-ГРАФИКИ

Соболевский Алексей

Высшая школа экономики, Москва, 2013

О чём лекция?

• Об истории• О 3D-графике• Об инженерах• О мыслях, помыслах и домыслах

инженеров• О жизни, вселенной и вообще

Высшая школа экономики, Москва, 2013

Основные понятия 3D-графики (условно)

• Полигон• Вертекс• Текстура• Шейдер• Буфер глубины и буфер кадра• Рендеринг

Высшая школа экономики, Москва, 2013

Высшая школа экономики, Москва, 2013

Угадай личность!

Высшая школа экономики, Москва, 2013

Высшая школа экономики, Москва, 2013

• Ставил эксперименты на прямых и точках (стереометрия)

• Изучал двумерные фигуры (планиметрия)

• Ввёл аксиомы для формализации пространств

Евклид

Высшая школа экономики, Москва, 2013

Высшая школа экономики, Москва, 2013

• Формализовал алгебру (символьный анализ)

• Научил находить корни квадратного уравнения (и не только)

• Первый пример бесконечного произведения

Франсуа Виет (1540 – 1603)

Высшая школа экономики, Москва, 2013

• Философ, математик, механик, физик и физиолог

• Рассуждал о методе. Написал книгу

• Объяснил графики лучше чертить в тетради в клеточку

Кто это?

Высшая школа экономики, Москва, 2013

• Основоположник аналитической геометрии

• Создатель метода координат

Рене Декарт (1596 – 1650)

Высшая школа экономики, Москва, 2013

Трёхмерное пространство

Высшая школа экономики, Москва, 2013

Системы координат

Цилиндрическая Сферическая

Высшая школа экономики, Москва, 2013

Леонард Эйлер (1707 – 1783)

• Положил начало топологии• Первый учебник по

аналитической геометрии и основам дифференциальной геометрии

• Разворачивал трёхмерные поверхности на плоскость

• Отлично рисовал круги

Высшая школа экономики, Москва, 2013

Леонард Эйлер (1707 – 1783)

Высшая школа экономики, Москва, 2013

Борис Делоне, Георгий Вороной

• Создатель метода триангуляции

• Создатель «Диаграмы Вороного»

Высшая школа экономики, Москва, 2013

Георгий Вороной (1868 – 1908)

Высшая школа экономики, Москва, 2013

Георгий Вороной (1868 – 1908)

Высшая школа экономики, Москва, 2013

Борис Делоне (1890 – 1980)

Высшая школа экономики, Москва, 2013

Алан Тьюринг (1912 – 1954)

• Создатель «Машины Тьюринга» (24 года)

• Входил в группу разработчиков «Манчестерских компьютеров» (36 лет)

• Участвовал в разработке первого транзисторного компьютера

Высшая школа экономики, Москва, 2013

Даммер, Шокли, Бардин, Браттейн

• Один из основоположников микрочипов и интегральных схем

• Нобелевская премия за создание биполярных транзисторов

Высшая школа экономики, Москва, 2013

Наконец-то 3D!

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

Высшая школа экономики, Москва, 2013

Немного иллюзий

Высшая школа экономики, Москва, 2013

Красота...

Высшая школа экономики, Москва, 2013

Современные гуру

Иван Сазерленд•Создатель Sketchpad (1962 год)•Основатель первой кафедры Компьютерной графики

Эд Катмолл•Создатель первых алгоритмов битовой глубины и текстурирования•Технический директор Pixar

Высшая школа экономики, Москва, 2013

Современные гуру

Высшая школа экономики, Москва, 2013

Современные гуру

Джим БлиннСоздатель Bump Mapping и Environment Mapping

Би Тюн ФонгPhong Shading

Анри ГюраGouraud Shading

Высшая школа экономики, Москва, 2013

Немного об алгоритмах

Высшая школа экономики, Москва, 2013

Немного об алгоритмах

Высшая школа экономики, Москва, 2013

Немного об алгоритмах

Высшая школа экономики, Москва, 2013

Немного об алгоритмах

— вектор нормали

— направление проецирования

— коэффициент фонового освещения

— коэффициент зеркального освещения

— коэффициент диффузного освещения

Высшая школа экономики, Москва, 2013

Немного об алгоритмах

Высшая школа экономики, Москва, 2013

Немного об алгоритмах

Высшая школа экономики, Москва, 2013

Немного истории

Высшая школа экономики, Москва, 2013

Пьер Безье (1910 – 1999)

• Создатель кривой Безье (1959)

Высшая школа экономики, Москва, 2013

Пьер Безье (1910 – 1999)

• Частный случай многочленов Бернштейна

Высшая школа экономики, Москва, 2013

NURBS

Высшая школа экономики, Москва, 2013

Ещё немного истории

• 1976 годПервый фильм, в котором использовалась 3D-графики, Futureworld

• Первая программа 3D-моделирования MAGI (процедрурная)

• Алгоритм трассировки лучей• Появление полигонального метода

моделирования• Power Animator (SGI-станции, Irix OS)

Высшая школа экономики, Москва, 2013

Ещё немного истории (Futureworld)

Высшая школа экономики, Москва, 2013

Разбиение на треугольники вручную

Высшая школа экономики, Москва, 2013

Главное событие 3D графики

Главное событие в истории 3D графики

Высшая школа экономики, Москва, 2013

Главное событие 3D графики

?

Высшая школа экономики, Москва, 2013

Главное событие 3D графики

Высшая школа экономики, Москва, 2013

Главное событие 3D графики

Высшая школа экономики, Москва, 2013

Главное событие 3D графики

Высшая школа экономики, Москва, 2013

Чайник Юта (Мартин Ньюэлл, 1975 г.)

Высшая школа экономики, Москва, 2013

Тем временем...

Высшая школа экономики, Москва, 2013

Тем временем...

• MDA (Monochrome Display Adapter)• CGA (Color Graphics Adapter, 4 бита, 16 цветов, 1981 г.)• EGA (Enhanced Graphics Adapter, 64 цвета, 1984 г.)• VGA (Video Graphics Array, 1987 г.)

– Графический контроллер– видеопамять – последовательный преобразователь – контроллер атрибутов – Синхронизатор– контроллер ЭЛТ

Высшая школа экономики, Москва, 2013

Тем временем...

Высшая школа экономики, Москва, 2013

Тем временем...

Test Drive Ferrari. CGA vs Now (NFS)

Высшая школа экономики, Москва, 2013

Видеокарты/ускорители

Раньше было:Видеокарта (2D) + ускоритель (3D)

Сейчас:Видеокарта (3D) + сопроцессоры (Shaders, Physics)

Высшая школа экономики, Москва, 2013

Voodoo 2 (1998)

Pixel Fill Rate: 90 Mil/sMemory/core clock: 90 MHzDisplay out: 16 bit

Высшая школа экономики, Москва, 2013

GeForce GTX Titan (2013)

Pixel Fill Rate: 40 000 Mil/sCore clock: 837 MHzMemory clock: 6008 Mhz

Высшая школа экономики, Москва, 2013

Архитектура

Высшая школа экономики, Москва, 2013

Текстурирование

Высшая школа экономики, Москва, 2013

Текстурирование. Bump Mapping (1978)

Высшая школа экономики, Москва, 2013

Текстурирование сейчас

• Normal Mapping• Parallax Mapping• Bump Mapping• Environment Mapping• Displacement Mapping• Mipmapping• …

Высшая школа экономики, Москва, 2013

Текстурирование

Высшая школа экономики, Москва, 2013

Текстурирование

Высшая школа экономики, Москва, 2013

Буфер глубины (1974) и буфер кадра

Буфер глубины - способ учёта удалённости элемента изображения

По сути, это массив, записывающий удалённость объектов сцены от камеры

Высшая школа экономики, Москва, 2013

Буфер глубины и буфер кадра

Высшая школа экономики, Москва, 2013

Буфер глубины и буфер кадра

Высшая школа экономики, Москва, 2013

Рендеринг

РЕНДЕРИНГ

РЕНДЕРИНГ

Высшая школа экономики, Москва, 2013

Рендеринг

Получение изображения из модели (не обязательно 3D)

Высшая школа экономики, Москва, 2013

Конвейер рендеринга

Это стандартный алгоритм

Вход конвейера – данные о 3D сцене (свет, объекты, текстуры, шейдеры, типы затенения и освещения и т.п.)

Выход конвейера – 2D картинка на мониторе

Высшая школа экономики, Москва, 2013

Конвейер рендеринга (раньше)

• Триангуляция (Triangle Setup)

• Трансформация объектов

• Обработка вершин

• Трансформация вида

• Проекция сцены

• Отсечение невидимых частей

• Растеризация

• Обработка пикселей

• Вывод

Высшая школа экономики, Москва, 2013

Конвейер рендеринга (сейчас)

Высшая школа экономики, Москва, 2013

Обработка света

Высшая школа экономики, Москва, 2013

Обработка света

• Lightmapping• Shadow Volumes• Ray Tracing и Reverse ray tracing• Occulsion mapping• Photon mapping

Высшая школа экономики, Москва, 2013

Lightmap

• Меняется цвет и освещённость текстуры

Высшая школа экономики, Москва, 2013

Shadow Volumes

• В самом простом случае: всё, что находится за освещённым объектом – чёрное. Очень жёсткие тени. Сложности с воспроизведением рассеивания света

Высшая школа экономики, Москва, 2013

Shadow Volumes

Справа показано, как распространяются проекции теневых объёмов от источника света

Высшая школа экономики, Москва, 2013

Ray Tracing и Reverse Ray Tracing

• Если совсем просто: каждый пиксель экрана – это луч, направленный в трёхмерную сцену. При пересечении с объектом высчитывается цвет этого пикселя с учётом коэффициентов отражения, преломления и цвета самой текстуры.

Высшая школа экономики, Москва, 2013

Ray Tracing и Reverse Ray Tracing

Высшая школа экономики, Москва, 2013

Дополнительные фишки

Дополнительно

Высшая школа экономики, Москва, 2013

Дополнительные методы и алгоритмы

• Методы построения 3D-объектов– NURBS– Voxels

• Anti-Aliasing• Motion Blur• HDR

Высшая школа экономики, Москва, 2013

Voxels

• Voxel – Volumetric pixel, по аналогии с обычным пикселем – из вокселей могут строится трёхмерные объекты. Может быть кубом, сферой или другим примитивом. Не нуждается в текстурировании.

Высшая школа экономики, Москва, 2013

Voxels

Высшая школа экономики, Москва, 2013

Anti-aliasing

• Anti-aliasing – технология, используемая для устранения эффекта «зубчатости», возникающего на краях одновременно выводимого на экран множества отдельных друг от друга плоских, или объёмных изображений.

Высшая школа экономики, Москва, 2013

Anti-aliasing

Высшая школа экономики, Москва, 2013

Шейдеры

Высшая школа экономики, Москва, 2013

Шейдеры

Высшая школа экономики, Москва, 2013

Шейдеры

Высшая школа экономики, Москва, 2013

Шейдеры

Это всё иллюзии, игры разума, игры

с цветом!

Высшая школа экономики, Москва, 2013

Иллюзии

Высшая школа экономики, Москва, 2013

Вернёмся к истории (кино)

• 6 секунд• 20 человек• 7 месяцев

Высшая школа экономики, Москва, 2013

Вернёмся к истории (кино)

• 12,7 млн. полигонов• 1 кадр – до 72 часов рендеринга

Высшая школа экономики, Москва, 2013

Аудитория А113

Высшая школа экономики, Москва, 2013

Аудитория А113

Высшая школа экономики, Москва, 2013

Аудитория А113

Высшая школа экономики, Москва, 2013

Аудитория А113

Высшая школа экономики, Москва, 2013

Аудитория А113

Высшая школа экономики, Москва, 2013

Видеокарта сейчас

• Около 4 000 000 000 транзисторов на одной плате• Около 1 000 ядер на обработку• Отдельные блоки для буферизации, растеризации,

обработки команд CUDA, Direct 3D, Open CL, Open GL• Сенсоры, датчики, обработчики ошибок, синхронизация,

доп. интерфейсы• Техпроцесс 20 нм

Высшая школа экономики, Москва, 2013

Видеокарта сейчас

• С/К «Ломоносов»– 78 000 + ядер– Реальная производительность – более 900 Тфлопс (i5 – около 100

Гфлопс)– Использование спец. шины InfiniBand для коммутации (до 300

Гбит/сек)– Гетерогенная архитектура