Лабораторная работа: «моделирование трехмерных сцен и виртуальная реальность». Программа пишется на языке С++ с использованием библиотек для работы с 3D (OpenGL и т.п.) Название: «Формирование изображения трехмерной поверхности».
В работе применяются следующие модели отражения света поверхностью:
модель отражения Ламберта,
модель Фонга-Блинна [2],
модель Торенса-Сперроу [3], или модель Кука-Торенса.
Освещение принимается за параллельные (однонаправленные) лучи одинаковой интенсивности, размер источника света не ограничен. Освещение задается направлением L[Lx Ly Lz].
1. Считать из исходного файла карту глубины заданной размерности. Имя файла карты глубины задается в файле JSON.
2. Визуализировать трехмерную оболочку, относящуюся к рассматриваемому объекту с использованием библиотеки OpenGL.
Для окончательного теста работы использовать файл DepthMap_10.dat
Сформировать согласно заданным в файле JSON положению источника света и наблюдателя изображение объекта в формате .bmp. Возможная модель отражения поверхности выбираются в соответствии с вариантом и конфигурируется в файле JSON, обработка файла конфигурации JSON позволяет осуществлять выбор одной из трех моделей отражения.
3.Экспортировать оболочку объекта в файл .bmp. Имя и формат выходного файла задается в файле JSON, необходимо предоставить выбор как минимум из трех форматов выходного файла, для хранения трехмерной оболочки
Дедлайн 22.12