Рендеринг на основе законов физики
книга

Рендеринг на основе законов физики

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

Автор: Мэтт Фарр, Вензел Джейкоб, Грег Хамфрис

Форматы: PDF

Издательство: ДМК Пресс

Год: 2024

Место издания: Москва

ISBN: 978-5-93700-237-2 (рус.). – ISBN 978-0-262-04802-6 (англ.)

Страниц: 1210

Артикул: 112900

Возрастная маркировка: 16+

Электронная книга
3799

Краткая аннотация книги "Рендеринг на основе законов физики"

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

Содержание книги "Рендеринг на основе законов физики : от теории к практике"


ОТ ИЗДАТЕЛЬСТВА
ОБ АВТОРАХ
ПРЕДИСЛОВИЕ
ГЛАВА 1. ВВЕДЕНИЕ
1.1 Грамотное программирование
1.2 Фотореалистический рендеринг и алгоритм рейтрейсинга
1.2.1 Камеры и пленка
1.2.2 Пересечения луч–объект
1.2.3 Распределение света
1.2.4 Видимость
1.2.5 Поверхности, рассеивающие свет
1.2.6 Непрямое пропускание света
1.2.7 Распространение луча
1.3 Обзор системы pbrt
1.3.1 Этапы выполнения
1.3.2 Функция main() системы pbrt
1.3.3 Интерфейс Integrator
1.3.4 ImageTileIntegrator и основной цикл рендеринга
1.3.5 Реализация RayIntegrator
1.3.6 Интегратор случайного блуждания
1.4 Как изучать материал этой книги
1.4.1 Упражнения
1.4.2 Просмотр изображений
1.4.3 Онлайн-версия
1.5 Понимание и использование кода
1.5.1 Организация исходного кода
1.5.2 Соглашение по наименованиям
1.5.3 Указатель или ссылка
1.5.4 Абстрактность или эффективность
1.5.5 Пространство имен pstd
1.5.6 Аллокаторы
1.5.7 Динамическая диспетчеризация
1.5.8 Оптимизация кода
1.5.9 Отладка и регистрация
1.5.10 Параллелизм и безопасность потоков
1.5.11 Расширение системы
1.5.12 Программные ошибки
1.6 Краткая история рендеринга на основе законов физики
1.6.1 Исследования
1.6.2 Производство
Дополнительная литература
Упражнения
ГЛАВА 2. ИНТЕГРИРОВАНИЕ МЕТОДОМ МОНТЕ-КАРЛО
2.1 Метод Монте-Карло: основы
2.1.1 Обзор предпосылок и теории вероятностей
2.1.2 Ожидаемые значения
2.1.3 Оценка Монте-Карло
2.1.4 Ошибка в статистических оценках Монте-Карло
2.2 Повышение эффективности
2.2.1 Стратифицированный семплинг
2.2.2 Семплинг по значимости
2.2.3 Семплинг по множественной значимости
2.2.4 Русская рулетка
2.2.5 Расщепление
2.3 Семплинг методом инверсии
2.3.1 Дискретный случай
2.3.2 Непрерывный случай
2.4 Преобразование между распределениями
2.4.1 Преобразование в нескольких измерениях
2.4.2 Семплинг с многомерными преобразованиями
Дополнительная литература
Упражнения
ГЛАВА 3. ГЕОМЕТРИЯ И ПРЕОБРАЗОВАНИЯ
3.1 Системы координат
3.1.1 Направленность системы координат
3.2 Базовые классы n-кортежей
3.3 Векторы
3.3.1 Нормализация и длина вектора
3.3.2 Скалярное и векторное произведения
3.3.3 Система координат из одного вектора
3.4 Точки
3.5 Нормали
3.6 Лучи
3.6.1 Дифференциалы лучей
3.7 Ограничивающие боксы
3.8 Сферическая геометрия
3.8.1 Телесные углы
3.8.2 Сферические полигоны
3.8.3 Сферические параметризации
3.8.4 Ограничивающие направления
3.9 Преобразования
3.9.1 Однородные координаты
3.9.2 Оценка класса преобразования
3.9.3 Базовые операции
3.9.4 Перемещения (трансляции)
3.9.5 Масштабирование
3.9.6 Поворот по осям x, y и z
3.9.7 Поворот вокруг произвольной оси
3.9.8 Поворот одного вектора к другому
3.9.9 Преобразование точки зрения
3.10 Применение преобразований
3.10.1 Точки
3.10.2 Векторы
3.10.3 Нормали
3.10.4 Лучи
3.10.5 Ограничивающие боксы
3.10.6 Композиция преобразований
3.10.7 Преобразования и направленность системы координат
3.10.8 Векторные фреймы
3.10.9 Анимированные преобразования
3.11 Взаимодействия
3.11.1 Взаимодействие с поверхностью
3.11.2 Взаимодействие со средой
Дополнительная литература
Упражнения
ГЛАВА 4. РАДИОМЕТРИЯ, СПЕКТРЫ И ЦВЕТ
4.1 Радиометрия
4.1.1 Базовые величины
4.1.2 Функции падающего и исходящего излучений
4.1.3 Радиометрические спектральные распределения
4.1.4 Яркость и фотометрия
4.2 Работа с радиометрическими интегралами
4.2.1 Интегралы по проекции телесного угла
4.2.2 Интегралы по сферическим координатам
4.2.3 Интегралы по площади
4.3 Отражение от поверхности
4.3.1 BRDF и BTDF
4.3.2 BSSRDF
4.4 Излучение света
4.4.1 Излучение черного тела
4.4.2 Стандартные источники света
4.5 Представление спектральных распределений
4.5.1 Интерфейс спектра
4.5.2 Общие спектральные распределения
4.5.3 Встроенные спектральные данные
4.5.4 Семплированные спектральные распределения
4.6 Цвет
4.6.1 Цветовое пространство XYZ
4.6.2 Цвет RGB
4.6.3 Цветовые пространства RGB
4.6.4 Почему именно спектральный рендеринг
4.6.5 Выбор количества длин волн для семплинга
4.6.6 От RGB к спектрам
Дополнительная литература
Упражнения
ГЛАВА 5. КАМЕРЫ И ПЛЕНКА
5.1 Интерфейс камеры
5.1.1 Пространства координат камеры
5.1.2 Класс CameraBase
5.2 Модели проекционных камер
5.2.1 Ортографическая камера
5.2.2 Перспективная камера
5.2.3 Модель тонкой линзы и глубина резкости
5.3 Сферическая камера
5.4 Пленка и изображение
5.4.1 Уравнение измерения камеры
5.4.2 Моделирование отклика световоспринимающего сенсора
5.4.3 Фильтрация семплов изображения
5.4.4 Интерфейс пленки
5.4.5 Общая функциональность пленки
5.4.6 RGBFilm
5.4.7 GBBufferFilm
Дополнительная литература
Упражнения
ГЛАВА 6. ФОРМЫ
6.1 Базовый интерфейс формы
6.1.1 Ограничивающие объемы
6.1.2 Пересечения лучей с границами
6.1.3 Проверки пересечения
6.1.4 Пространство координат пересечений
6.1.5 Одностороннесть
6.1.6 Диффузные источники
6.1.7 Семплинг
6.2 Сферы
6.2.1 Ограничивающие боксы
6.2.2 Проверки пересечения
6.2.3 Площадь поверхности
6.2.4 Семплинг
6.3 Цилиндры
6.3.1 Площадь и границы
6.3.2 Проверки пересечения
6.3.3 Семплинг
6.4 Диски
6.4.1 Площадь и ограничение
6.4.2 Проверки пересечения
6.4.3 Семплинг
6.5 Сетки из треугольников
6.5.1 Представление и хранение сетки
6.5.2 Класс Triangle
6.5.3 Пересечение луч–треугольник
*6.5.4 Семплинг
6.6 Билинейчатые патчи
6.6.1 Тестирование пересечений
6.6.2 Семплинг
*6.7 Кривые
6.7.1 Ограничивающие кривые
6.7.2 Проверки пересечения
*6.8 Управление ошибкой округления
6.8.1 Арифметика чисел с плавающей запятой
6.8.2 Консервативные пересечения луч–ограничение
6.8.3 Точные квадратичные дискриминанты
6.8.4 Надежные пересечения с треугольником
6.8.5 Ошибка точки пересечения с границей
6.8.6 Надежные инициированные источники лучей
6.8.7 Избежание пересечений позади источников лучей
6.8.8 Обсуждение
Дополнительная литература
Упражнения
ГЛАВА 7. ПРИМИТИВЫ И УСКОРЕНИЕ РЕНДЕРИНГА НА ПЕРЕСЕЧЕНИЯХ
7.1 Интерфейс Primitive и геометрические примитивы
7.1.1 Геометрические примитивы
7.1.2 Инстансирование объекта и примитивы в движении
7.2 Агрегаты
7.3 Иерархии ограничивающих объемов
7.3.1 Конструкция BVH
7.3.2 Эвристика площади поверхности
7.3.3 Линейные иерархии ограничивающих объемов
7.3.4 Компактный BVH для обхода
7.3.5 Тесты ограничения и пересечения
Дополнительная литература
Упражнения
ГЛАВА 8. СЕМПЛИРОВАНИЕ И РЕКОНСТРУКЦИЯ
8.1 Теория семплирования
8.1.1 Частотный интервал и преобразование Фурье
8.1.2 Идеальный семплинг и реконструкция
8.1.3 Алиасинг
8.1.4 Понятие пикселя
8.1.5 Семплинг и алиасинг при рендеринге
8.1.6 Спектральный анализ шаблонов семплинга
8.2 Семплинг и интегрирование
*8.2.1 Дисперсный анализ Фурье
8.2.2 Низкое расхождение и квази-Монте-Карло
8.3 Интерфейс cемплирования
8.4 Независимый семплер
8.5 Стратифицированный семплер
*8.6 Семплер Халтона
8.6.1 Точки Хаммерсли и Халтона
8.6.2 Рандомизация через скремблинг
8.6.3 Реализация семплера Халтона
8.6.4 Оценка
*8.7 Семплеры Sobol¢
8.7.1 Стратификация по элементарным интервалам
8.7.2 Рандомизация и скремблирование
8.7.3 Генерация семплов Sobol¢
8.7.4 Глобальный семплер Sobol¢
8.7.5 Заполненный семплер Sobol¢
8.7.6 Семплер синего шума Sobol¢
8.7.7 Оценка
8.8 Реконструкция изображения
8.8.1 Интерфейс Filter
8.8.2 FilterSampler
8.8.3 Прямоугольный фильтр
8.8.4 Треугольный фильтр
8.8.5 Фильтр Гаусса
8.8.6 Фильтр Митчелла
8.8.7 Оконный фильтр Sinc
Дополнительная литература
Упражнения
ГЛАВА 9. МОДЕЛИ ОТРАЖЕНИЯ
9.1 Представление BSDF
9.1.1 Геометрические установки и соглашения
9.1.2 Интерфейс BxDF
9.1.3 Полусферическое отражение
9.1.4 Дельта-распределения в BSDF
9.1.5 BSDF
9.2 Рассеянное отражение
9.3 Зеркальное отражение и пропускание
9.3.1 Физические обоснования
9.3.2 Коэффициент преломления
9.3.3 Закон зеркального отражения
9.3.4 Закон Снелла
9.3.5 Уравнение Френеля
9.3.6 Уравнение Френеля для проводников
9.4 BRDF проводника
9.5 BSDF диэлектрика
9.5.1 BSDF тонкого диэлектрика
*9.5.2 Несимметричное рассеяние и преломление
9.6 Моделирование шероховатости с использованием теории микрограней
9.6.1 Распределение микрограней
9.6.2 Маскирующая функция
9.6.3 Функция маскирования-шейдинга
9.6.4 Семплинг распределения видимых нормалей
9.6.5 Модель Торренса–Спэрроу
9.7 BSDF шероховатого диэлектрика
*9.8 Измеренные BSDF
9.8.1 Базовые структуры данных
9.8.2 Уравнение измеренной BRDF
*9.9 Рассеяние от волос
9.9.1 Геометрия волос
9.9.2 Рассеяние от волос
9.9.3 Продольное рассеяние
9.9.4 Поглощение в волокнах
9.9.5 Азимутальное рассеяние
9.9.6 Оценка модели рассеяния
9.9.7 Семплинг
9.9.8 Коэффициент поглощения волос
Дополнительная литература
Упражнения
ГЛАВА 10. ТЕКСТУРЫ И МАТЕРИАЛЫ
10.1 Семплинг текстур и антиалиасинг
10.1.1 Определение частоты семплинга текстуры
10.1.2 Лучевые дифференциалы на переходе границы между двумя средами
*10.1.3 Лучевые дифференциалы для зеркального отражения и пропускания
10.1.4 Фильтрующие функции текстур
10.2 Генерация текстурных координат
10.2.1 UV-маппинг
10.2.2 Сферический маппинг
10.2.3 Цилиндрический маппинг
10.2.4 Планарный маппинг
10.2.5 3D-маппинг
10.3 Текстурный интерфейс и базовые текстуры
10.3.1 Текстура Constant
10.3.2 Текстура Scale
10.3.3 Текстуры Mix
10.4 Текстуры-изображения
10.4.1 Управление текстурной памятью
10.4.2 Оценка текстуры изображения
10.4.3 Текстуры MIP
10.4.4 Фильтрование изображений-текстур
10.5 Интерфейс материалов и его реализации
10.5.1 Реализации Material
10.5.2 Вычисление BSDF на поверхности
10.5.3 Нормальный маппинг
10.5.4 Рельефный маппинг
Дополнительная литература
Упражнения
ГЛАВА 11. ОБЪЕМНОЕ РАССЕЯНИЕ
11.1 Процессы объемного рассеяния
11.1.1 Поглощение
11.1.2 Эмиссия
11.1.3 Рассеяние на выходе и затухание
11.1.4 Внутреннее рассеяние
11.2 Пропускание
11.2.1 Нулевое рассеяние
11.3 Фазовые функции
11.3.1 Фазовая функция Хеньи−Гринштейна
11.4 Передающие среды
11.4.1 Интерфейс Medium
11.4.2 Однородная среда
11.4.3 Мажорантный итератор DDA
11.4.4 Среда с однородной сеткой
11.4.5 Среда с сеткой RGB
Дополнительная литература
Упражнения
ГЛАВА 12. ИСТОЧНИКИ СВЕТА
12.1 Интерфейс источника света
12.1.1 Характеристики фотометрических источников света
12.1.2 Класс LightBase
12.2 Точечные источники света
12.2.1 Прожекторы
12.2.2 Источники света, проецирующие текстуры
12.2.3 Гониофотометрические источники света
12.3 Отдаленные источники света
12.4 Протяженные источники света
12.5 Бесконечные протяженные источники света
12.5.1 Бесконечные источники с однородным светом
12.5.2 Бесконечные источники света, проецирующие изображение
*12.5.3 Бесконечные источники света, проецирующие изображения, ограниченные порталом
12.6 Семплинг источников света
12.6.1 Однородный семплинг источников света
12.6.2 Семплирование по мощности света
*12.6.3 Семплинг источника света с BVH
Дополнительная литература
Упражнения
ГЛАВА 13. СВЕТОВОЙ ПЕРЕНОС I: ПОВЕРХНОСТНОЕ ОТРАЖЕНИЕ
13.1 Уравнение светового переноса
13.1.1 Основной вывод
13.1.2 Аналитические решения для LTE
13.1.3 Поверхностная форма LTE
13.1.4 Интегралы по пути
13.1.5 Подынтегральная дельта-функция
13.1.6 Разделение подынтегральной функции
13.2 Трассировка пути
13.2.1 Обзор
13.2.2 Семплинг пути
13.2.3 Конструкция восходящего пути
13.3 Простой трассировщик пути
13.4 Улучшенный трассировщик пути
13.4.1 Регуляризация пути
Дополнительная литература
Упражнения
ГЛАВА 14. СВЕТОВОЙ ПЕРЕНОС II: ОБЪЕМНЫЙ РЕНДЕРИНГ
14.1 Уравнение переноса
14.1.1 Обобщение нулевого рассеяния
14.1.2 Расчет уравнения переноса
14.1.3 Семплинг мажорантного пропускания
*14.1.4 Обобщенное пространство путей
*14.1.5 Оценка объемного интеграла пути
14.2 Интеграторы объемного рассеяния
14.2.1 Простой объемный интегратор
*14.2.2 Совершенствование методов семплинга
*14.2.3 Улучшенный объемный интегратор
14.3 Рассеяние на слоистых материалах
14.3.1 Одномерное уравнение переноса
14.3.2 Слоистая BxDF
14.3.3 Проводники и диффузные материалы с покрытием
Дополнительная литература
Упражнения
ГЛАВА *15. РЕНДЕРИНГ ВОЛНОВОГО ФРОНТА НА GPU
15.1 Отображение трассировки пути на GPU
15.1.1 Базовая архитектура GPU
15.1.2 Структуризация вычислений рендеринга
15.1.3 Обзор системы
15.2 Фундамент реализации
15.2.1 Спецификация обработки и пространства памяти
15.2.2 Запуск ядер на GPU
15.2.3 Схема массивов структур
15.2.4 Очереди обработки
15.3 Реализация трассировщика пути
15.3.1 Запуск работы
15.3.2 Метод Render()
15.3.3 Генерация лучей камеры
15.3.4 Цикл по глубине луча
15.3.5 Генерация семплов
15.3.6 Тестирование пересечений
15.3.7 Передающие среды
15.3.8 Эмиссия, порожденная лучами
15.3.9 Поверхностное рассеяние
15.3.10 Теневые лучи
15.3.11 Обновление Film
Дополнительная литература
Упражнения
ГЛАВА 16. РЕТРОСПЕКТИВА И БУДУЩЕЕ
16.1 История pbrt
16.2 Альтернативы
16.2.1 Внеядерный рендеринг
16.2.2 Прешейдинг микрополигональных сеток
16.2.3 Пакетный трейсинг
16.2.4 Интерактивный и анимационный рендеринг
16.2.5 Специализированная компиляция
16.3 Новейшие темы
16.3.1 Обратный и дифференцируемый рендеринг
16.3.2 Машинное обучение и рендеринг
16.4 Будущее
16.5 Заключение
ПРИЛОЖЕНИЕ А. АЛГОРИТМЫ СЕМПЛИНГА
A.1 Метод псевдонима
A.2 Резервуарный семплинг
A.3 Метод отбраковки
A.4 Семплинг одномерных функций
A.4.1 Семплинг треугольной функции
A.4.2 Семплинг экспоненциальных распределений
A.4.3 Семплинг функции Гаусса
A.4.4 Семплинг логистической функции
A.4.5 Семплинг функции на интервале
A.4.6 Семплинг неинвертируемых CDFS
A.4.7 Семплинг кусочно-постоянных одномерных функций
A.5 Семплинг многомерных функций
A.5.1 Семплинг единичного диска
A.5.2 Однородный семплинг полусфер и сфер
A.5.3 Косинусно-взвешенный семплинг полусферы
A.5.4 Семплинг внутри конуса
A.5.5 Кусочно-постоянные двумерные распределения
A.5.6 Оконные кусочно-постоянные двумерные распределения
Дополнительная литература
Упражнения
ПРИЛОЖЕНИЕ B. УТИЛИТЫ
B.1 Запуск системы, очистка и опции
B.2 Математическая инфраструктура
B.2.1 Основные алгебраические функции
B.2.2 Целые степени и многочлены
B.2.3 Тригонометрические функции
B.2.4 Логарифмическая и степенная функции
B.2.5 Трансцендентные и специальные функции
B.2.6 Интервальный поиск
B.2.7 Битовые операции
B.2.8 Хеширование и случайные перестановки
*B.2.9 Безошибочные преобразования
B.2.10 Нахождение нулей
B.2.11 Надежная оценка дисперсии
B.2.12 Квадратные матрицы
B.2.13 Безье-сплайны
B.2.14 Генерация псевдослучайных чисел
B.2.15 Интервальная арифметика
B.3 Интерактивность
B.3.1 Работа с файлами
B.3.2 Кодирование символов и Unicode
B.3.3 Печать и форматирование строк
B.3.4 Сообщения о ошибках
B.3.5 Логирование
B.3.6 Оператор контроля и отслеживание ошибок при выполнении
B.3.7 Отображение изображений
B.3.8 Рапорт о процессе выполнения
B.4 Контейнеры и управление памятью
B.4.1 Двумерные массивы
B.4.2 Интернированные объекты
*B.4.3 Наборы типов
B.4.4 Тегированные указатели
B.4.5 Трехмерный семплинг
B.4.6 Эффективная временная аллокация памяти
B.5 Изображения
B.5.1 Работа со значениями пикселей
B.5.2 Операции на всем изображении
B.5.3 Чтение и сохранение изображений
B.5.4 Изменение размера изображения
B.5.5 Пирамиды изображений
B.5.6 Кодировки цвета
B.6 Параллельная обработка
B.6.1 Конкуренция потоков данных и координация
B.6.2 Атомики с плавающей запятой
B.6.3 Модели с когерентностью памяти и производительность
B.6.4 Пулы потоков и выполнение параллельных задач
B.6.5 Функция Parallel для циклов
B.6.6 Асинхронные задачи
B.6.7 Переменные локального потока
B.7 Статистика
B.7.1 Реализация
Дополнительная литература
Упражнения
ПРИЛОЖЕНИЕ C. ОБРАБОТКА ОПИСАНИЯ СЦЕНЫ
C.1 Токенизация и парсинг
C.2 Управление описанием сцены
C.2.1 Сущности сцены
C.2.2 Словари параметров
C.2.3 Отслеживание графического статуса
C.2.4 Создание элементов сцены
C.3 Создание BasicScene и финальных объектов
C.4 Добавление новых реализаций объекта
Дополнительная литература
Упражнения
ССЫЛКИ
ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ

Все отзывы о книге Рендеринг на основе законов физики : от теории к практике

Чтобы оставить отзыв, зарегистрируйтесь или войдите

С книгой "Рендеринг на основе законов физики" читают

Бестселлеры нон-фикшн
Новинки книги нон-фикшн
Новинки аудиокниг

Внимание!
При обнаружении неточностей или ошибок в описании книги "Рендеринг на основе законов физики : от теории к практике (автор Мэтт Фарр, Вензел Джейкоб, Грег Хамфрис)", просим Вас отправить сообщение на почту help@directmedia.ru. Благодарим!