Воссоздание существующего фрагмента улицы в 3D

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Шнор (нем. Schnoor) — одна из старейших улиц Бремена и названный в её честь старейший из районов города. C 1970 г. историческая застройка квартала находится под охраной государства.

Так как я в поиске работы мне не нужен был проект-визитка. Такой, чтоб в полной мере показал мои навыки как 3д художника. И я выбрал воссоздать фрагмент старейшей улицы Бремена полностью своими силами.

Меня зовут Максим и сейчас я опишу как это сделал.

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

Перенёс получившейся контур в 3ds max и "выдавил" полученный план. Получился грубый контур будущего проекта:

Дальше на получившиеся "стенки" домов надо было нанести разметку будущих окон, дверей и прочего. В качестве референса я использовал google street view.
Тут вся улочка как на ладони. Хоть и были свои неудобства в виде сферического искажения панорам.

Наделав скринов я начал грубую обрисовку домов чтоб понимать масштабы и расположение

И эти контуры я тоже отправляю в макс и там выдавливаю. Получается это:

После того как все дома были грубо восстановлены я принялся к их моделированию. Теперь ясно масштаб и прочее - ошибки не будет.

Так же отрисовывал детали и выдавливал их.

Над дверью этого дома пришлось потрудиться. Какие-то элементы отрисовывал и выдавливал, какие-то надо было скульптить (и соответственно запекал потом), а какие-то прям на глаз. Учитывая что сам дверной проём уже был готов - это было не сложно.

Дальше по старой схеме обрисовываю "навесы" и выдавливаю

Да! Так как задача стояла всё сделать самому, то и все вывески и разные надписи были отрисованы в векторе. Дальше использовались в Substance 3D Painter

В конечном итоге когда сам дом был смоделирован и все его атрибуты готовы, он отправлялся в unreal engine

и конечно важная часть - текстурирование!

Я делал свои текстуры в Substance 3D Designer (я же все сам=)

Создавал свои кисточки в Substance 3D Painter. Ниже пример "потресканных швов"

В начале пути я хотел сделать дождливую атмосферу.... но что-то потом передумал.
Хотя и лужи не плохие были и капли...

В итоге сделал боле 30 вариантов освещения, ниже некоторые из них:

Был выбран этот:

И куда без нюанса... Деревья я дела не сам - я пользовался программой speed tree. Получается спорный момент о том, что я 100% сделал всё сам... С другой стороны ведь я не взял готовые деревья, а прям работал в программе чтоб получить их ) С этой мыслью я решил что достоин сказать о том, что сделал всё сам )

Я записал прогулку:
https://youtu.be/XBbwzizYoTY
Записал пролёт камеры:
https://youtu.be/rCcUUlUabb0

А еще есть короткое видео похожее на статью:
https://youtu.be/GzUDj1zGeyM

Всё это реал тайм. Мне нравится "здесь и сейчас". Но всё же я не мог обойти path tracing.
Ниже пару изображений сделанных прям во вьюпорте на разных этапах рабочего процесса.

Как по мне, path tracing выглядит очень круто. Но это не реал тайм и надо время на рендер. К слову, у меня видеокарта 3060ti и она ооочень много времени тратит на этот самый рендер )

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

Спасибо за то, что дочитали )

Источник: https://habr.com/ru/articles/731286/


Интересные статьи

Интересные статьи

Уже не только дети и подростки, но и многие вполне взрослые люди никогда не слышали звука модемного коннекта. Если несколько лет назад видео, где озадаченным детишкам показывают дискеты, дисковые те...
В этой статье попытаемся понять, как изменились процедуры обслуживания индексов для таблиц Microsoft SQL Server в современных условиях: при размещении файлов данных и журнала транзакций на SSD-дисках,...
Сегодня прошел ровно 1 год с прошлой статьи и в связи с этим я решил поделиться своим вариантом решения проблемы просмотра youtube-видео фрагментарно и циклически. Это проблема как никогд...
Много лет работая SQL Server DBA и занимаясь то администрированием серверов, то оптимизацией производительности. В общем, захотелось в свободное время сделать что-то полезное для Вселенной и колл...
Рассказ о том, как в Android'е передать информацию из фрагмента (Fragment) в активность (Activity). Информация будет полезной для новичков (джуниоров), осваивающих программирование для Android, и...