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

Ваш ход!

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

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

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

Упражнение 2: ИСПОЛЬЗОВАНИЕ ТЕКСТУРЫ ПРЕОБРАЗОВАНИЯ

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

Упражнение 3: ИСПОЛЬЗОВАНИЕ ПРОМЕЖУТОЧНЫХ РЕЗУЛЬТАТОВ РАЗМЫТИЯ ДЛЯ ПЛАВНОГО ПЕРЕХОДА

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


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

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