Making Of "Библиотека Гейзеля в Сан-Диего"

Всем привет! Меня зовут Антон, и я уже довольно давно двигаю полигончики в разные стороны. :)

В 3D я работаю около 15-ти лет, начинал с рекламно-выставочной области, ненадолго заглянул в жилые интерьеры, гораздо дольше проработал с коммерческими, после чего сделал широкий шаг в сторону архитектуры. Примерно столько же времени держу в руках зеркалку, и периодически у меня даже получаются неплохие снимки. :)

В этом Making Of я расскажу о том, как создавалась работа «Библиотека Гейзеля».

main.jpg

Проект получился достаточно неожиданным, несмотря на то, что первая мысль о нём закралась ещё давно, когда хороший товарищ показал свою модель, со словами «смотри какую брутальную штуку я сделал». Но в тот момент всё угасло, то ли от нехватки времени, то ли настроения, а может и всего сразу. Однако спустя некоторое время модель самого здания обросла окружением, свободного времени прибавилось, да и товарищ был всё также не против увидеть интересный виз с его моделью.

Выбор атмосферы для изначального кадра был достаточно быстрым — благо в голове давно крутилась идея сделать что-то мрачно-осеннее, да и архитектура оказалась идеально подходящей. Несмотря на то, что референсы — всему голова, я не стал собирать какую-либо подборку, лишь быстро пробежался по разнообразным фоткам в гугле (хотя и взяв пару картинок на заметку) и решил довериться ощущениям. А неожиданно попавшаяся на глаза картинка с грустным Киану Ривзом, стала неожиданной маленькой фишкой проекта, и поводом опробовать новый тип нейронок.

Зная себя и способность упустить идею, запал так же быстро, как они пришли, я поставил себе временной лимит в примерно неделю, запасся чаем и запустил макс.

Доводка модели

Как всем известно — дьявол в деталях и несмотря на очень хорошее качество модели, некоторых мелочей мне не хватило, поэтому в сцене появились перила с подсветкой лесенки, указатель, баки для мусора, напоминание о том, чего около библиотеки делать не нужно, и слегка поменял свой вид ландшафт. Для того, чтобы в будущем не получить ровный коврик из травы и кустов, я слегка помял попадавший в кадр участок через soft selection, и более точечно — кисточкой push\pull.

model_details.jpg

Свет

Поскольку в обычной работе я в 90% случаев пользуюсь HDRI, доводя их до нужной кондиции, и разделяя светящую и видимую карты через Direct visibility override, то и здесь не стал делать исключений, подобрав пасмурное небо.

HDR.jpg

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

clay.jpg

Точно так же, больше на ощущениях, чем на базе референсов, был настроен солнечный и вечерний свет.



Доводка модели, дубль 2

Как часто бывает, увлёкшись внешними мелочами, я незаметно упустил из вида одну небольшую деталь, размером практически во всё здание — потолки, со специфичным шахматным расположением светильников, да ещё и в разных направлениях. Цели сделать идеально не было, но всё же хотелось правдоподобности и упрощённые варианты отваливались один за другим:

  • просто нарезать сетку и сделать через Corona Light Mtl — невозможно будет погасить лампы, останутся чёрные пятна,
  • сделать геометрией с нишами под свет через модификатор Array — на каждом этаже разная область для каждого направления ламп, каждую придётся подпиливать отдельно, муторно (не забываем про неделю и потерю запала),

И тут снизошло озарение — как я мог забыть про RailClone! Который на пару с ForestPack уже неоднократно спасал жизнь, время и репутацию. :)

После небольшого количества тестов было собрано комбо из пары многоуровневых сплайнов, двух генераторов двухкоординатного массива, отдельно для продольных и поперечных ламп, в каждом из которых притаился маркер для расстановки самих источников света (они расставлены отдельно через ForestPack в режиме Reference).

ceiling.jpg

Ну и чтобы внутреннее освещение не было таким монотонным, цвет источникам я задал через CoronaMultiMap, закинув туда несколько цветов, включая чёрный, рандомно отключающий источники.

Зелень, листья, и все все
(толпа на под окном дружно кричит «ForestPack! ForestPack!»)

Почему именно форест, а не встроенный ChaosScatter, например? Всё просто, форест у меня под рукой уже много лет, а вместе с этим ещё и повод опробовать не так давно появившийся инструмент ForestIvy, позволяющий буквально рисовать плющ прямо по объектам.

ivy.jpg

Настроек в нём пока по минимуму, небольшая библиотека пресетов, но результат мне понравился даже по умолчанию.

Зелени как таковой, в сцене не сказать, что очень много – несколько кустов из Megascans, десяток деревьев, и пара-тройка пучков травы.

В отдельных форестах — мелкие кустики около входа, большие кусты на склоне, трава под большими кустами, чтобы они визуально не торчали из земли и фоновые деревья. В настройках самой рассадки (кроме деревьев) я почти всегда включаю кластеры и коллизии, чтобы кусты не торчали друг из друга, и кучковались одинаковыми видами, и подбираю значения Units на глаз.

Деревья стоящие прямо за камерой, листики которых видны по краям кадра, я почти всегда ставлю вручную – мне так и быстрее и удобнее, чем любой другой способ.

greenery.jpg

Лежащие на асфальте листочки — тоже форест, вернее, форесты. Листики одни и те же, а форестов два. Почему, опять же, так проще. Один отвечает за более-менее равномерно раскиданные по всей площади дорожек листья, второй, в котором зона рассадки нарисована вручную, кисточкой — за всё что, что скапливается в углах и приводит в ужас калифорнийских дворников. :)

Накидав листиков, я было успокоился и сунулся в материалы, когда пронеслась мысль: «Стоп, если их столько насыпалось, наверное они вполне могут продолжать падать прямо в момент съёмки? А чтоб было красиво – ещё и могут быть с размытием..»

И поскольку анимировать тот же ChaosScatter можно, но моушен блюр при этом работать не будет, пришлось погрузиться в неизведанный ранее мир частиц, поставив tyFlow.

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

Собственно, на скриншоте вся последовательность для небольшого листопада, сверху вниз:

  • Birth - генерация самих частиц,
  • Position Icon - указание эмиттера (то, откуда будут сыпаться листочки),
  • Force - силы, отвечающие за то куда их будет сдувать,
  • Spin - вращение,
  • Slow - общее замедление частиц, чтобы блюр не превратил их в непонятные полоски (половину в итоге превратил, впрочем:)),
  • Mesh – или лыжи не едут, или корона без этого частицы не рендерит,
  • Shape - какую именно геометрию прицепить к каждой частице,
  • PhysX Shape указание того, что объект дорожки – конец пути, на него можно упасть и лежать,
  • (пропущенные Instance ID и Material – мои попытки понять, как нацепить материал листиков на сами частицы).

leaves.jpg

И поскольку тестируется обычно всё на боксах, можно увидеть, как выглядит «отложить кирпичей» в исполнении tyFlow. :)

bricks.jpg

Материалы

Пожалуй, это один из самых скромных разделов всего making of`а, основные материалы, бетон, земля и плитка – взяты из библиотеки Megascans либо без изменений, либо с минимальными доработками, либо простейшие сами по себе стёкла и зеркала, поэтому подробно остановлюсь только на паре из них — зеркальном остеклении перед входом, и мокрой плитке.

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

mirror.jpg

Материал плитки с лужами чуть объёмней на вид, но логически – всё так же прост, следите за руками :) К основной текстуре подмешивается noise, чтобы слегка затемнить участки под будущими лужами, он же идёт в reflection glossiness, усиливая отражения в тех же самых местах.

У материала в верхнем слое тот самый glossiness отключается полностью, превращая его в плитку, равномерно залитую водой, после чего оба слоя смешиваются по копии всё того же нойза, со сближенными значениями high и low threshold (в красной рамочке), для усиления контраста. Остальные настройки нойза лучше не трогать, во избежание появления луж не там, где задумано. :)

paving.jpg

Да-да, я знаю что можно было сделать через CoronaPhysicalMtl и слой ClearCoat, и скорей всего ещё парой способов, но мои олдскулы всё ещё слегка сводит от физматов, поэтому по старинке.

Киану против ИИ

«Вам пора это увидеть, мистер Андерсон, увидеть и понять! Вы не можете победить, продолжать борьбу бессмысленно. Почему, мистер Андерсон, почему вы упорствуете?» (с) The Matrix Revolutions.

Внимание, если вы – ярый ненавистник нейронок в любом их проявлении, то следующий раздел лучше пропустить, и вместо этого выйти прогуляться, выпить чайку, или принять таблеточек. :)

Поскольку грустный Киану был, пожалуй, главной движущей силой проекта, хотелось усадить его на ступеньки между двух стен, но со своей «любовью» ко вписыванию людей на пост-обработке, я не был уверен, что получится так, чтобы мне не было за это стыдно. Поэтому в голове почти сразу закрутился вопрос, как сделать это внутри сцены, хотя бы минимально. Последовательно отвалились варианты с «посадить любого человечка и отключить visible to camera, чтоб осталась одна тень», и «затекстурить методом проекции любого сидящего болванчика», после чего я задумался – ведь должен был прогресс уже шагнуть в сторону генерации моделей по фоткам? Оказалось, уже давно, и довольно далеко зашёл. :)

До локальных нейронок на базе того же ComfiUI пока руки не дошли, но с подсказки автора модели здания я решил попробовать сервис Tripo Ai, в котором он по одному фото сгенерил себе неведомую фигню (маленькую и на дальний план) для одного из проектов.

neuro_reeves.jpg

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

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

post.jpg

И на этом работа над основным кадром окончена, как и этот making of. Спасибо всем за внимание!

809 0 850 15
6
2025-09-03
Интересный "Making Of". Спасибо!
P. S. Работа отличная!
2025-09-08
Хорошая работа. Люблю когда вроде все просто сделано, без лишних полигонов, но итоговая картинка все-равно классная. Сейчас этого не хватает во многих работах. Пихают туда миллиарды полигонов, в надежде что это поможет замаскировать недостатки идеи. И это даже срабатывает. А у вас хорошо, сам бы лучше не сделал!

Немного вариабельности цвета в деревьях не хватает. В таких вариантах хорошо работает 3d шум , скомпоженный на diffuse карту листьев, например желтизна, или чуть наборот, немного серости, чуть-чуть прямо. Оно когда большими пятнами в 3д пространстве на кроне распределяется хорошо выглядит
2025-09-09
Превосходно, Антон! Написал еще так живо, без сухости, хорош!
2025-09-22
Дмитрий ВолоснихинХорошая работа. Люблю когда вроде все просто сделано, без лишних полигонов, но итоговая картинка все-равно классная. Сейчас этого не хватает во многих работах. Пихают туда миллиарды полигонов, в надежде что это поможет замаскировать недостатки идеи. И это даже срабатывает. А у вас хорошо, сам бы лучше не сделал!

Немного вариабельности цвета в деревьях не хватает. В таких вариантах хорошо работает 3d шум , скомпоженный на diffuse карту листьев, например желтизна, или чуть наборот, немного серости, чуть-чуть прямо. Оно когда большими пятнами в 3д пространстве на кроне распределяется хорошо выглядит
спасибо, переусложнять и сам не хотел) способ с деревьями надо будет попробовать, у фореста есть свой инструмент, им тут как раз кусты подкрашены, но про деревья вспомнил уже после рендеров..
2025-09-22
Наиль Хамидуллин (Naeel)Превосходно, Антон! Написал еще так живо, без сухости, хорош!

спасибо,старался написать так, чтоб и самому было интересно перечитать через какое то время)
2025-10-01
Спасибо, вроде не сложно, но в то же время интересно и полезно
RENDER.RU