етурных координат, чтобы в итоге получилось значение, принадлежащее диапазону [0, 1]. Значения sut сравниваются с заданным граничным значением. Если оба значения превышают граничное, фрагмент отбрасывается. В противном случае вычисляется освещение и выполняется рендеринг фрагмента.

На цветном рис. 15 оба граничных значения были установлены в 0,13. Это означает, что больше чем три четверти фрагментов было отброшено! Получилась «дырявая корова1».

1.4. Бугристая поверхность

Читатель уже видел процедурные шейдеры, которые меняют цвет (кирпичная стенка, полоски) и непрозрачность (сетка). Еще один интересный эффект можно получить, используя метод бугристой поверхности. Этот метод подразумевает изменение нормали поверхности перед наложением освещения. Изменение нормали может быть сделано алгоритмически, если накладывается какой-либо повторяющийся шаблон; можно просто добавлять шум к компонентам нормали, а можно брать значения из текстурной карты. Метод бугристой поверхности - эффективный способ сделать изображение более реалистичным, не увеличивая сложность геометрических фигур. Этот метод можно использовать для имитации деталей поверхности или ее неровностей.

Метод бугристой поверхности не изменяет саму поверхность, а просто хитро меняет ее освещение. Поэтому неровности не будут видны на краях силуэта объекта. Например, нужно сделать модель планеты как сферы и закрасить ее с помощью метода бугристой поверхности, чтобы показать горы, большие Относительно диаметра планеты. Так как в геометрии исходного объекта (сферы) ничего не меняется - она всегда будет идеально круглой, - то гор не будет видно на самом краю изображения, хотя посередине они будут рельефно выделяться. Но в реальных объектах рельеф поверхности обычно проявляется и на краях силуэта. Поэтому данный метод используется для наложения эффекта на небольшие по сравнению со всей поверхностью участки. Апельсиновая корочка, рельефные логотипы, кирпичи с неровной поверхностью - это хорошие примеры применения метода бугристой поверхности.


⇐ Предыдущая| |Следующая ⇒