Курсовая работа: Построение изображений ландшафта в реальном времени

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

Математическое содержание алгоритма заключается в следующем: если известно уравнение плоскости, несущей каждый многоугольник, то вычисление глубины каждого пикселя на сканирующей строке можно проделать пошаговым способом. Уравнение плоскости имеет вид:

Для сканирующей строки, поэтому глубина пикселя на этой строке, у которого , равна

или

,

но , поэтому .

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

· для всех сторон треугольника записываются параметрические уравнения вида

;

· затем для каждой стороны находится параметр t при пересечении с горизонталью :

;

· если , то рассчитывается абсцисса точки пересечения горизонтали со стороной треугольника:

.

Рис. 2.1.6.2. Поиск абсцисс точек пересечения горизонтали со сторонами треугольника

2.1.7 Освещение

В любом трёхмерном приложении использование какой-либо модели освещения всегда придаёт реалистичность обрабатываемой сцене. Как правило, в неё включается закон, по которому рассчитывается освещённость точки в пространстве, и метод закраски освещённого многоугольника. От выбора той или иной модели освещения зависит качество изображения, построенного компьютером, и скорость работы программы.

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

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

Рис. 2.1.7.1. Матовая поверхность

,

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

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

Можно еще усовершенствовать модель отражения, если учесть, что энергия от точечного источника света уменьшается пропорционально квадрату расстояния. Использование такого правила вызывает сложности, поэтому на практике часто реализуют модель, выражаемую эмпирической формулой

К-во Просмотров: 527
Бесплатно скачать Курсовая работа: Построение изображений ландшафта в реальном времени