Курсовая работа: Модель трехмерной сцены и библиотека OpenGL

6. Полусфера

Нормаль для полусферы определяется координатами самой фигуры, поэтому просто переписаны координаты из glVertex3f в glNormal3f.

Графическое представление тела с освещением

Описание наложения текстуры на тело

Для наложения текстур на тела, поверхности применяется функция SetupTextures(); В своей работе я использовал 4 вида текстуры, различных размеров. Текстура накладывается на цилиндр, параллелепипед, лопасть, квадрат. Способ наложения примитивно прост. По порядку разберёмся с каждой из фигур.

- Цилиндр.

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

Текстура

- Параллелепипед.

По аналогии с цилиндром абстрактно раскучиваем параллелепипед и наложим текстуру.

- Лопасть.

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

- Квадрат.

Текстура на квадрат накладывается один к одному с существующими координатами.


Графическое представление тела с текстурой

Описание представления поверхности

Поверхность строится перебором координат x и y в пределах от -N до N и вычислением для каждой пары (x,y) значения z.

Нормаль к поверхности в точке находятся через честные производные функции по x, y, z


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

Текстура на поверхность накладывается целиком и растягивается по размерам поверхности. Наложение происходит соотношением координат поверхности и координат текстуры так, что каждому QUAD, из которого строится поверхность, соотносится часть растрового изображения, разбивая его, свои образом, на сетку. Координаты текстуры для точки :

Графическое представление поверхности



Список используемой литературы

1. А.В. Боресков. Графика Трехмерной Компьютерной Игры на Основе OpenGL. М.: «Диалог-МИФИ»,2004

2. Ю.М. Боянковский, А.В. Игнатенко, А.И. Фролов. Графическая библиотека OpenGL. уч.-мет.пособие. Москва,2003

3. NeHe Tutorials

К-во Просмотров: 509
Бесплатно скачать Курсовая работа: Модель трехмерной сцены и библиотека OpenGL