netlib.narod.ru< Назад | Оглавление | Далее >

Ваш ход!

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

Упражнение 1: СТАРОЕ КИНО

Первое упражнение очень простое, потому что мы будем использовать обобщенный шейдер для цветовых манипуляций, чтобы реализовать эффект сепии. Сепия — это цветовой режим имитирующий изображение в старых вестернах. В ранние дни фотографии используемые для пленки пигменты не позволяли правильно воспроизводить черно-белое изображение. Фактически изображение приобретало коричневатый оттенок. Чтобы воспроизвести этот эффект вы должны определить интенсивность оттенка серого для пикселя, как и при черно-белой визуализации, а потом к результату применить оттенок. Чтобы применить оттенок, вам просто надо сложить его со значениями, генерируемыми преобразованием в оттенки серого. Оттенки для эффекта сепии следующие: Красный = 80/255, Зеленый = 43/255, Синий = –23/255.

Ваша задача — определить, как оттенок можно интегрировать в матрицу цветового преобразования. Чтобы понять, как оттенок применяется к матрице, посмотрите на рис. 5.9.

Упражнение 2: ФИЛЬТР ГАУССА

В этой главе вы узнали как реализовать простой фильтр размытия. Существует множество других типов фильтров, которые можно использовать для размытия изображения. Один из наиболее популярных — фильтр Гаусса. Для него требуется считывать гораздо больше пикселей в фрагменте размером 7 × 7, и поэтому требуется много выборок из текстуры. Но, к счастью, этот фильтр разделяемый. Это значит, что весь фильтр может быть разбит на отдельные горизонтальные и вертикальные проходы.

В этом упражнении вы должны усовершенствовать шейдер фильтра размытия для реализации фильтра Гаусса. Вы будете должны добавить в шейдер дополнительный проход, чтобы фильтр раздельно выполнял горизонтальную и вертикальную выборки. В фильтре Гаусса используются следующие весовые коэффициенты: 1/64, 6/64, 15/64, 20/64, 15/64, 6/64 и 1/64.


netlib.narod.ru< Назад | Оглавление | Далее >

Сайт управляется системой uCoz