
Результат

Исходное изображение
В общем, смысл такой: нам нужна маска, по которой в
исходное изображение будет, при помощи постобработки, добавляться DOF.
Она должна выглядеть так:

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

Первым делом нужно определить три расстояния: 1 –
расстояние от камеры до места, откуда будет начинаться переход от
размытого до четкого (у меня это расстояние до первого видимого
объекта), 2 - расстояние от камеры до фокуса (средний чайник) и 3 –
соответственно, расстояние от камеры до места, откуда будет начинаться
переход от четкого размытого до размытого (задняя стенка бокса). Для
это можно воспользоваться инструментом Tape (Create -> Helpers ->
Tape -> указать на экране две точки измерения). Для более точного
определения расстояния я воспользовался выравниванием, выделил начало
Tape, нажал “alt+A” (или Tools -> Align) и указал на камеру, также
выровнял конец Tape со средним чайником. Далее померил два других
расстояния.

У меня получились следующие расстояния: 1 - 86,682; 2 – 192,187; 3 – 316,604.
Далее создал два «VrayZDepth» (покажу на примере
виреевского ZDepth), для этого вошел в «Render Scene Dialog» (F10),
перешел на вкладку «Render Element», нажал кнопку “Add” и, в
появившемся списке, выбрал «VrayZDepth», и так два раза.

Для первого VrayZDepth я ввел следующие значения:

Т.е. zdepth min – расстояние 1, zdepth max -
расстояние 2. Обратите внимание, что должна стоять галочка invert
zdepth, так как при этом объекты которые ближе к камере будут светлее
тех которые дальше, что нам и нужно (хотя можно инвертировать и потом в
Photoshop-e).
Значения для второго VrayZDepth:

Также, обратите внимание, что в обоих случаях должна
стоять галочка Enable Filtering. Это необходимо для того, чтобы при
просчете этих карт учитывался антиалиасинг-филтр, иначе границы
объектов будут «с зазубренами». Ну и конечно галочка Enable, а то
работать не будет.

Далее нажал кнопку Render (предварительно настроив
параметры основного рендера конечно), по истечении какого то времени у
меня «вышли» три картинки: первая, исходное изображение (см. выше),
вторая:
и третья:

Сохранил все три и закрыл 3ds Max.
Пришло время, собственно, постобработки.
Открыл в Photoshop две полученные карты глубины,
перенес обе картинки в один «документ» на разные слои, так, чтобы слой
с первой (та на которой ближние объекты светлее) был сверху слоя с
второй картинкой (та на которой дальние объекты светлее). Поставил для
первого слоя режим «Screen».

Объединил слои и сохранил новое изображение, получилась маска для блюра:

Ну а дальше дело техники. Открыл основное
изображение, сделал выделение по только что полученной маске, я это
делаю так: открываю изображение с маской, выделяю все и копирую в буфер
обмена (Ctrl+C), открываю основное изображение, перехожу в режим “Edit
in Quick Mask Mode” щелкая по соответствующей кнопке (Q) или

вставляю изображение из буфера обмена, должно выглядеть так:

И перехожу обратно в “Edit in Standard Mode” (Q) или

Ну а дальше применил фильтр «Lens Blur» (я обычно
его применяю, хотя можно использовать и другое размытие) с такими
параметрами:
Вот и все, псевдодоф готов.
НО… не во всех случаях этот способ возможно
использовать, или использовать «вчистую». Например, если объект в
фокусе частично перекрывается размытым объектом, то этот объект
(размытый), неправильно размывается в местах пересечения…

|