Уроки: 3ds Max

DOF (Depth of Field ) сделаем вручную

Автор о себе:

Отроду года два-три, точно не помню, когда был создан.
Фото отсутствует, так как у создателя (ни в коем разе не путать с Создателем) все руки не доходят внешность доделать.
Работа: наружная реклама, торговое, выставочное оборудование.
Автор не претендует на оригинальность данного урока, но урок написан честно, ни одной идеи содрано не было.


"Depth of Field" (глубина поля, дословно) - эффект довольно интересный. Это, по сути, имитация поведения объектива реальной камеры при фото- и видеосъемке. При реальной фото-, видеосъемке происходит (ручная или для ленивых автоматическая) настройка "резкости". Все объекты или части объектов, находящиеся вне фокуса, в результате выходят размытыми.

Реализация данного эффекта в МАХе по умолчанию отключена. Те, кто пользовался этим эффектом, знают почему. Те же, кто еще не пробовал подробно как это делается, думаю, сами поймут, в чем тут собака зарылась:

Для начала создадим сцену: основой будет служить PLAN (Create menu > Standard Primitives > Plane)

Далее изогнем plan с помощью bend Modifiers menu > Parametric Deformers > Bend (это необязательно).

далее добавим каких-нибудь объектов, например чайников

свет, к примеру, omni штуки три (Create menu > Lights > Omni Light ) и таргет камеру: одна штука (Create menu > Cameras > Target Camera )

теперь ВАЖНО: target камеры должен быть нацелен на объект, который будет в фокусе. У меня это центральный чайник. Далее настраиваем параметры камеры: собственно настроить нужно только одну галочку:

делаем рендер с камеры:

Макс делает несколько (а сколько - указывает параметр Total Passes) рендеров, причем каждый раз камеру сдвигает немного по траектории окружности с радиусом, указанным в параметре Sample Radius. После каждый рендер интегрируется в итоговую картинку. Чтоб усилить эффект, необходимо увеличивать Sample Radius, а чтоб при этом не потерять в качестве, нужно добавить в Total Passes, а так же и в терпении, так как время ожидания результата растянется. Хорошо, если в это время к Вам друзья с пивом зашли в гости.

Вот теперь понятно почему мы редко видим применение данного эффекта. Хотя, если у вас компьютер с запредельными параметрами, то Вы и не поймете о чем тут я, в таком случае дальше можете не читать.

DOF реализован и во внешних рендерах (FinalRender, Vray) лучше ли, хуже, не об этом речь в данном уроке, главное - что и в этих рендерах рабочее место превращается в зал ожидания.

Но этому горю можно помочь:

Данный способ описан для единичной картинки, но и при анимации все это применимо, разве что вместо PS нужно использовать к примеру AE.

Итак:

делаем рендер нашей сцены с ОТКЛЮЧЕННЫМ DOF:

сохраним картинку под именем teapot1.

Далее объединим все видимые объекты в группу (Group menu > Group)

Применим на ВСЮ группу модификатор UVW Map (Modifiers menu > UV Coordinates > UVW Map)

Ахтунг!!! Параметры Lenght, Width должны бать одинаковыми, какие бы Вы значения не поставили.

и сразу же передвинем центр Gizmo этого модификатора в центр объекта, который должен быть в фокусе (у меня это центральный чайник)

теперь создадим материал специальный.

Для создания специального материала возьмем материал самый обычный - стандарт. На слот Diffuse кинем (все же лучше звучит, чем "полОжим") карту Gradient Ramp ( Material Editor > Maps rollout > Click a Map button. > Material/Map Browser > Gradient Ramp )

Нужно настроить карту как на рисунке ниже

и еще перетащим эту карту с слота дифузе на слот Self-Illumination, причем во всплывшем меню тыкнем в точку как на рисунке ниже

В сцене нужно отключить, именно отключить, а не удалить, все источники света. Ну, во-первых: вдруг Вам захочется еще подергать освещение в сцене, а во-вторых: если в сцене не будет источников света, то МАХ добавит умолчательных парочку, которые засветят совсем не так как надо.

Сделаем рендер. Должно получиться что-то подобное:

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

Рендер сохраним с именем Mask_DOF. А вот теперь откроем оба файла, а именно "Mask_DOF" и "teapot1" в ФотоШопе (Adobe Photoshop)

.

и перетащим Mask_DOF на окно teapot1. Теперь в teapot1 у нас два слоя. Выровняем слои.

перейдем во вкладку "Channels". Выделим какой-нибудь канал, после чего зажав Ctrl кликнем на выбранном канале. В итоге должно загрузиться выделение (Load Selection) по данному каналу.

во вкладке Layers отключим видимость верхнего слоя (это наша черно-белая маска) и сделаем активным нижний слой.

И вот! Наконец-то! Остался последний шаг. Применим фильтр размытия. На мой взгляд, лучше применить LensBlur. Настройки, к примеру, вот такие:

а вот и результат

Вот здесь, я думаю, начнется:

"Да это совсем не то!!!",

"Ни...а не похоже!!!",

"А вот если камеру анимировать, то как быть?"

и т.д.

Согласен, отличается от того, что выдает МАХ. Но кто сказал, что в МАХе верный алгоритм? А во-вторых: люди, Вы в какой области варитесь? В компьютерной графике что реального? В том-то и дело, что все иллюзорно.

Также согласен, что есть некоторые недоделки (это видно, если внимательно присмотреться), но поверьте, все решаемо силами PS или AE (с небольшой предварительной корректировкой в МАХе).

Данный способ быстр, а главное - его можно автоматизировать.

Удачи! Бандерснатч.

64268 Автор:
Актуальность: 236
Качество: 264
Суммарный балл: 500
Выбор Публики
Голосов: 58 оценки

Отзывы посетителей:

2 | След.
аватар
 
Lexandr 1 0
Интересный вариант!!!=)
Спасибо.!!!
аватар
 
SPOILT 2 0
Вообще есть специальнрый плуг X-DOF. Он очень даже неплохо рендерит этот эффект даже без многопроходного рендеринга.
аватар
 
Gottsnake 282 0
Ваще Dof в максе по тупому сделан. Думаю хороший програмист мог придумать алгоритм и по-лучше.
Я лично если надо вручную, на глаз, в фотопопе мазюкаю и нормально получается. Или по частям рендерю. Теперь вот и потвоему делать буду.
PS : DOF в современных играх уже делают, в реал-тайме (call of juares, fifa 07...)!
аватар
 
maxer 7 0
Ещё один способ. А почему бы нет?
аватар
 
scripterBB 11 0
Простые пути не для нас.;=)
аватар
 
crest 7 0
А самомнения через край...
аватар
 
rendermax80 -8 0
Ещё один случай применения неудобных методов работы.
аватар
 
Necro 107 0
Та что парится в RPF и в камбашен и фокус и анимация фокуса
аватар
 
BorisK 22 0
Ув. BanderSnatch OnSamiy! Да бы не заниматься-тем-что-Вы-сказали, вот картинушечка. http://rapidshare.de/files/26726569/Untitled-1.jpg.html
Z-bufer был выведен как отдельный файл, и засунут как доп канал в файл с картинкой в шопе (Alpha1)
аватар
 
Bander Snatch 9 0
To yts, на мой взгляд мапингом пользоваться при анимации удобнее и понятнее. Хотя, кому как.

Вообщето последние отзывы напоминают товтологию.
аватар
 
Ant[on] 7 0
Dof делается очень просто.
При наличае дефузной карты, Z карты, AfterEffecta и фильтра из Сапфировского набора плагинов.
Его можно даже анимировать если имеется последовательность.
аватар
 
yts 1 0
Z, вроде бы, не имеет антиалайзинга при стандартном подходе и, при желании, заменяется материалом на все с картой fallof с параметром distance blend,
туда же, при желании, можно засунуть radial gradient ramp c мэппингом по screen, но по сути, это проще сделать в AE .. Это больее универсально и не зависит от мэппинга.
глубоко не согласен с BanderSnatch есть и в авторе очень грамотные фильтры размытия и в анимации довольно часто такой метод дает хороший результат в короткие сроки.
аватар
 
Bander Snatch 9 0
В уроке не описан способ с помощью z-глубины потому, что Бандерснатч признал этот способ неприемлемым по след причинам:

Ну вопервых самое дальное - MAX будет черным, а самое ближнее наоборот - белым (но это мелочи), да и инвертировать в случае чего всегда можно.

Эффект DOF: все что в фокусе - резкость, что дальше, а так же все что БЛИЖЕ - размыто, и степень размытости зависит от отдаления объектов от точки фокусировки.

z-глубина подходит для часного случая: это когда НЕТ объектов перед тем объектом, который в фокусе.

Попробуйте получить эффект для сцены, которая описана в уроке. Долго будете мучаться. Могу подсказать пару направлений в раздумывании:
вопервых можно попробовать добавить ДВА рендер элемента z_depth, в недежде настроить первый (или второй) на глубину ЗА фокусом, а второй (или первый) на глубину ДО фокуса. После эти две картинки в фотошопе хитрожопо сварить в единое целое (кстати тут еще нужно помучаться). Вот если Вы уже начали воплощать это в реалии (хотя с какой бы радости это делать?), то можете все бросить к е.... ф.... так как окажется, что все объекты которые находятся ближе к камере чем параметр min окажутся белыми, т.е. будут в итоге в фокусе. Вы можете попробовать сделать значения min больше чем max, но и тут грядет неудача.

Еще проблема - анимация. Как то у Бандерснатча не очень то получилось анимировать параметры z-глубины, чего-то ключи не ставяться. Мож диверсанты к компу прокрались и МАХ хитро попортили.

Вобщем z-глубина клевый способ, жаль только что в теории.

аватар
 
Moon Man 37 0
Возможно, Вы и правы. Я попробую З-глубиной попробовать.
аватар
 
Radge-Saidor 12 0
По мне так есть более простой и удобный способ:
1. Для этого надо создать Target Camera-разместить Target в центре композиции ( сцены )
2. В настройках Render-а в закладке Render Element добавить (Add) Z_Depth
3. У Z_epth есть два параметра:
а, Z_Min – самое ближнее, будет при Rendering будет чёрным
б, Z_Max - самое дальнее, соответственно будит белым
3а. жмём F12 выскакивает панэлька "Move Transform type-In" Ручками копируем значение параметра Dolly и вставляем его в Z_Max , Z_min можно ввести ручками.
Далее Rendering получаем два изображения Diffuse и Z_Depth сохраняем, в любую папку (главное в её путь и Имя должны мыль на Английском (это для (Shake) ).
4. Далее Photoshop, Premiere Pro или After Effects. и делаем как было рассказано в уроке, или каким-то своими методами..... Я лично предпочитаю Aple Shake. Для эффектов и тем более эффектов с использованием Shake, на мой взгляд лучащая прога...
аватар
 
Moon Man 37 0
Друзья! Только вечером, после прочтения этого урока, до меня дошло, что чтото не так...Фокус ведь не РАДИАЛЬНЫЙ, а ЛИНЕЙНЫЙ!!! Надо было эту масочку градиентную делать линией, параллельной горизонту! Хе-хе. В любом случае, мне всё равно понравилось. Насчёт впоста...фокус и там страдает при включении других эффектов, например: туман+альфаканал (типа деревья) и сам DOF.
аватар
 
Sergey Volkov 64 0
А если MAXWELL-ом рендернуть с небольшим FStop? ;)
аватар
 
Hardgainer 38 0
А видео пост не катит? Фокус в таргет камеры и никакого гемора. Или я не в теме?
аватар
 
konoplev 42 0
to BanderSnatch
<<<<< Оказывается для написания ПОПУЛЯРНОГО урока достаточно перевести на родной язык кусок мануала, и вообще переписать чей-то учебник и поставить под эти творением свою подпись. Кому нужны твои изыскания и набитые шишки.>>>>>>
Полностью согласен
аватар
 
Bander Snatch 9 0
Как и следовало ожидать, так никто и описал нормальный способ использования Z-глубины в данном способе получения DOF.

Действительно, при анимации можно передвигать гизмо UVWmap куда хочеться (тем самым передвигая фокус), или прицепить этот самый гизмо к таргету камеры, как писал BorisK, (хотя тут еще вопрос, как это лучше сделать, так как МАХ в этом случае ведет себя давольно странно).

Склеить готовых ролик и рилик-маску можно прямо в АЕ, быстро и легко. Для объективности стоит сказать, что в АЕ неважные фильтры размытия.

Вообще-то печаль берет меня. Оказывается для написания ПОПУЛЯРНОГО урока достаточно перевести на родной язык кусок мануала, и вообще переписать чей-то учебник и поставить под эти творением свою подпись. Кому нужны твои изыскания и набитые шишки.
2 | След.
Зарегистрируйтесь, чтобы добавить комментарий.
Эту страницу просмотрели: 728 уникальных посетителей