7. Тени

 

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

 

В отличие от локального освещения, тени являются одним из эффектов глобального освещения. Т.к. основным местом использования алгоритмов теней в реальном времени являются компьютерные игры, то в дальнейшем, для удобства, будут приводиться примеры именно на них. Существует несколько основных подходов к построению теней, рассмотрим алгоритм «Преобразование модели "на землю" и отрисовка её как тени». Фактически, это первый алгоритм построения тени, который был применён в играх. (Turok II, Shogo, etc.). Он отличается простотой реализации и хорошим качеством получаемой тени. Этот алгоритм был впервые описан Джимом Блинном [BLIN88]. В своей статье он описал уравнения для проектирования полигона "на землю", т.е. на плоскость z=0, в направлении от источника света. Он рассмотрел два случая: 

 

  1. Источник на бесконечности (параллельный направленный свет)
  2. Локальный источник (точечный источник недалеко от объекта)

 

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

 

Hosted by uCoz