Скачиваний:
24
Добавлен:
01.05.2014
Размер:
300.03 Кб
Скачать

Санкт-Петербургский Государственный

Электротехнический Университет

Кафедра МОЭВМ

Задание для лабораторной работы № 6

" Отображение отражений и теней "

Студент: гр.3341 Митягин С.А.

Преподаватель: Герасимова Т.В.

Санкт-Петербург

2007

Задания

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

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

1. Реализация комнаты,

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

1.6. Реализация комнаты как в задании 1.1., но с введением в сцену зеркальной стены с мультиотражением.

Выполнение работы

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

Отображение отражений

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

Отображение среды осуществляется следующим образом. То, что вы видите в точке Р блестящего объекта, приходит в эту точку из окружающей среды как раз в том направлении, чтобы отразиться в ваш глаз. Для того чтобы определить это направление, проследите за лучом от глаза до точки Р и определите направление отраженного луча. Проследите далее за этим лучом до точки его пересечения с текстурой (окружающим кубом или сферой). На рис. 6.2. показан луч, исходящий из глаза в точку Р. Если обозначить направление этого луча за u, а единичную нормаль в точке Р за m, то направление отраженного луча будет равно r=u-2(u*m)m. Отраженный луч продолжается в этом направлении до пересечения с гипотетической поверхностью, которая содержит текстуру. С вычислительной точки зрения проще всего предположить, что блестящий объект находится в центре и по размерам немного меньше окружающего его куба или сферы. Тогда отраженный луч исходит приблизительно из центра объекта и его направление r может быть непосредственно использовано для указания на текстуру.

Тени придают изображению большую реалистичность. Тень передает большое количество информации. В данном разделе рассматриваются два метода вычисления теней: "раскрашивание" теней; использование буфера глубины.

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

Алгоритм использует интуитивное представление полной сцены с зеркалом как составленной из двух: «настоящей» и «виртуальной» – находящейся за зеркалом. Следовательно, процесс рисования отражений состоит из двух частей: 1) визуализации обычной сцены и 2) построения и визуализации виртуальной. Для каждого объекта «настоящей» сцены строится его отраженный двойник, который наблюдатель и увидит в зеркале.

Настройка изображения:

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

Внешний вид формы:

Вывод:

В результате выполнения работы были получены навыки изображения трехмерных объектов с тенью и отражением, и была разработана демонстративная программа.