Создание виртуального тура в Unreal Engine 4 (почти прямой эфир)

Всем привет.

Прежде всего, хочу сказать, что данная статья не преследует следующие задачи (если нет настроения вникать во вступление, то скрольте до фразы "теперь по существу", она чутка ниже:

1. Обучение/уроки и пр. (Эта статья в первую очередь предназначена для моего личного развития. Возможно не самый лучший способ, но всё же). Ни в коем случае не принимайте данную статью как "гайд" по тому, как "надо делать", тут будет много ошибок и неправильных действий, более того я уверен что у ряда публики мои слови и действия буду вызывать шлепок ладони о лоб. Я не знаю умных словечек, терминов и грамотных подходов исключительно потому что я только начал. Поэтому товарищи знатоки очень прошу вас отнеситесь к этому с пониманием т.к. вы тоже когда то начинали. К слову в итоге полезность этой статьи может повернуться в область - "как НЕ надо делать" )))) 

2. Вопросам "подскажите, пожалуйста, как сделать "это"". (Я не планирую заваливать вопросами кого-либо о тех трудностях с которыми сталкиваюсь. В данной статье будут вопросы, которые я буду оставлять открытыми без их решения по причине того, что я не знаю как их разрешить. Однако, приветствую всех тех, кто будет сопровождать советом мои действия и помогать закрыть подобные вопросы).

3. Убеждения и выводы как лучше поступать. (Не хочу и не собираюсь навязывать кому-либо "правильность/последовательность" моих решений. 

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

Для чего я это всё завариваю:

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

2. Вторая немаловажная причина это собственная невнимательность к деталям и потрясающе ничтожный опыт. Этой статьёй я надеюсь получить обсуждение максимально всевозможных тем в данной структуре в одной статье, чтобы не летать в поисках иголки по просторам. 

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

4. Добиться действительно крутого результата.

И наконец, прежде чем начать, хочу поделиться с вами парой ссылок, которые считаю важными и очень полезными:

1. Тут простыня от А до Я, посвящённая обучению на практике:

https://3ddd.ru/blog/post/arkhitiekturnaia_vizualizatsiia_v_unreal_engine_rukovodstvo_dlia_novichkov  https://3ddd.ru/blog/post/arkhitiekturnaia_vizualizatsiia_v_unreal_engine_rukovodstvo_dlia_novichkov 

2. Тут товарищ делится собственными мыслями о каше под названием "Архивиз в UE4". Там нет обучалок и прочего, просто у автора бомбит от того как это всё не сладко, но круто. Написано легко и интересно, нашёл много откликов в собственных мыслях при чтении, всем рекомендую:

https://3ddd.ru/blog/post/making_of_new_scandinavian_ili_poghovorim_niemnogho_o_ue4 

Теперь по существу.

Итак, всё что будет происходить ниже будет обновляться раз в день (по возможности разумеется). Буду максимально краток, чтобы не замучить умников и тех кто не любит читать, поэтому местами будут ссылки на видео где другие покажут вам как сделать "то-то".

 

Начнем.

Шаг 1. UV развертка и экспорт.

Подготовил объект в 3ds max. Авторство не моё, в данном случае я преследую научные цели, а не творчество. Вот ссылка на источник откуда я взял проектhttp://design-homes.ru/kvartiry/interer-odnokomnatnoj-kvartiry-studii-42-kv-m  

4cd3aeed3f0b98051317701478e79ce9.png

Далее от основной коробки я отсоединил объект, создав тем самым отдельный меш для будущей стены:

Не знаю, правильно ли я поступаю, но тем не менее:

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

8b1d3d10c784ac6de55a3c0568eaa8bb.png

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

f88169327eb4b9ecb7cb767d3abd7f47.png

Таким образом, я пропустил через этот скрипт все объекты по отдельности, не разом, что были у меня в сцене. Я не прибегал к их поправке т.к. вроде как "итак сойдёт" - возможно это большая ошибка. Но к сожалению мой мозг пока не осознал правильность подхода к составлению правильной развертки объектов. 

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

 Шаг 2. Создание сцены в UE4

Всё по стандарту, создал проект со стартовым контентом (т.к. там есть материалы, которые мне помогают по началу). 

В появившейся сцене от разрабов (креста столик) я не стал удалять всё. Я удалил только меши, плей и рефлекшн сферы. 

Далее я импортировал свои объекты в проект, убрав всем известные галочки (материалы, текстуры, коллизию и авто развертку). Разместил, настроил рефлекшн боксы, поставил ligth portal, скайлайт, солнце, пару источников света и тд и тп. 

Разумеется перед запеканием, я настроил разрешение лайтмапов на всех мешах. Тут внимание, для удобства (вероятно это лишнее и это совсем не удобство) я включил режим просмотра сцены Lightmap Density этот режим показывает кол-во пикселей и их разрешение освещения. 

9073ff3df3185bc5e00cfb23dc22a5db.png

Далее узрел вот такую картину:

4531db1906c9ce288b1263d9129ea094.png

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

Короче говоря, запек и получил вот такое дело:

1f5ed96745b5e22adaa5d2266b92e5a7.png

9db335a82e3a96b1b8300c4ec9673f7a.png

c011e9624fda26a42f47906be8e36487.png

1f8d7511e2d43441265af5561d8bba25.png

f40f9c54a4b994d32d868a779b264333.png

На данный момент, я нахожусь на этом этапе. 

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

unreal engine 4ue4архивизбольгневface palm

Комментарии (19)

+5
Quasar
боль, гнев, face palm (С)

Тут на форуме 3-5 человек разбирается в UE, к чему такие сопли в начале?)

Для запекания света есть несколько правил для разверток.
1. Между шелами минимум 2 пикселя. Лучше больше. Изначально нужно знать, какое разрешение лайтмапы будет у объекта. Уже исходя из этого создается развертка.
2. Шелы должны занимать все пространство развертки. Лучше растянуть какой либо шел. Для запечения это не так важно. А вот пустые места в развертке скажутся на времени запекания и на качестве.
3. Чем меньше швов на меше, тем лучше. Допускается растягивание шелов, искажение, конечно без оверлапинга. Делать швы только при 90 градусах и более.
0
gillda
Спасибо, применю данную практику. А по поводу трагедии в начале, уже был опыт лишних мнений в подобной теме на форуме, поэтому решил что имеет место быть. )
+19
Quasar
Мои мысли, если можно.

Конечно архвиз на движках это круто. Все красиво, в движении, в интерактиве. Но, мало кто задумывается в начале обучения об очень не маловажных деталях.

1. Скорость. Веткой ниже ребята вчетвером делали одну комнату 3 недели. И все равно тень на мониторе лесенкой)
Это долго. Конечно можно бахнуть скриптом авторазвертки и миновать 2 дня работы. Но это выльется в большие проблемы потом. Знаете почему? Во первых это скорость запекания. Для таких разверток аля автомат нужно большое разрешение лайтмап. Чем больше разрешени, тем дольше запекание. Размер исходного файла. Об этом чуть ниже

2. Размер красоты. А размер всей этой красоты на выходе не маленький. Самый минимум для одной хорошей комнаты 600-700 мб. Чего говорить о целой квартире? А еще этот размер напрямую зависит от разрешения лайтмап. И чем больше вы халтурите с развертками, тем больше в итоге получаются эти карты.

3. Быстродействие. У вас на рабочем компе, все может быть все красиво. У вас 32гб оперативки. Видяха - титанХ. Проц минимум i7. А что на компе у заказчика? Вы узнавали?) Вы пробовали запустить unreal paris на встроенной видяхе ноутбука?)

4. Практика. А что на практике? Никакого рабочего процесса с дизайнером это действо не предпологает. Да, рендерить особо ничего не нужно, это по началу воодушевляет)
Открою может небольшую тайну для многих. Запекание света, более менее качественного занимает минимум 5 часов на средний интерьер. Да, зато потом можно смотреть под разными углами и делать видео. Но. 5 часов это чистовой рендер. А сколько вам понадобится времени на правки, перерендеривание, пробы? Еще небольшое открытие. Если вы отрендерили все, но потом заметили жирный косяк на ножке стула, то придется опять ждать 5 часов. Ибо в движок может только пересчитать все, и никак по отдельности.

5. Интерактив. Можно нафигачить красоту, сделать видео, скриншоты, все круто. Но какая в этом польза, если нет интерактива? А что бы он был нужно как минимум математическое и логическое мышление, а по хорошему знание хотя бы школьного курса Basic или Pascal.

Вывод. Не так давно, года три назад я тоже с огромным энтузиазмом взялся за изучение UE в качестве виза. На тот момент я уже знал и работал в Unity. За эти три года я сделал всего 2 коммерческих интерьера на UE. Прочувствовал всю боль и понял, что нет. Запеченный свет не мое. Зато я выполнил больше десятка интерактивных приложений на движке, изучил C++ и bluprints, а так же делал большое кол-во видеороликов архитектуры, где не нужен был запеченный свет.
По своему опыту скажу, что в коммерческих целях создание интерьеров в UE не выгодно. Говорю это для тех, кто подумывает о изучении движка в этих целях.
+3
gillda
Согласен с мнением, и плюс ко всему в посте есть ссылка на почти такие же мысли как у вас. Для меня это больше творческий интерес, но если говорить о коммерции, то тут можно долго размышлять. Вывод всеравно будет неоднозначный т.к. Время идет, технологии развиваются и все может быть. То, что было под сомнением 3 года назад да и сегодня, не отменяет ту возможность что все резко поменяется за год. С другой стороны, действительно если задуматься о продаже такой штуки то тут нужно очень хорошо подумать для кого, как и тд т.к. Рынок применения не ограничивается визом и не ограничивается каким либо одним сегментом типа семейств со слабыми компами. Все остальное зависит от того какие у вас есть знакомства и варианты как это продать.
+1
Spartak
Все верно написал, знание С++ будет очень кстати, по поводу архвиза, тоже соглашусь нету смысла делать пару-тройку помещений в интерактиве, несоразмерные затраты и прибыль. И еще, надо также научиться оптимизировать все, плюс для больших проектов лоды итд. Про запекание тоже соглашусь, эверы писали, что один из последних интов считался 10 часов суммарно 100 корами. видимо лм считали в 4К)
+2
BlessOd
Тут нечего добавть, аплодирую стоя.
+1
Quasar
Ну я говорил только про виз интерьера для коммерции. В других же сферах применения, как я написал движок очень даже пригодный. Большую чсть дохода за это время я получил благодаря UE.
+1
Amiminoru
Открою секрет. Выгодно продавать игровые ассеты в сторах юнити/эпик.
Алсо, от 1.5к зелени за уйкэнд поднимаются влёгкую, если модель попадает на главную, особенно в моменты боусных скидок и т.д.. Но это должна быть отличная модель/пак пропов.
+1
Spartak
ну тут надо брать объемом, и не надо забывать про модерацию, некоторые вещи модерируются по месяцу, ну и от попадание через ту же неделю на трекеры, никто не застрахован.
+1
ЛисаКот
где где за выходные 1.5 к зелени? ))
+1
gillda
Думал и об этом, неужели всё так просто, что достаточно сделать хорошую модель и вытерпеть модерацию?
+5
BlessOd
Не стоит так громко высказыватся, все далеко не так просто. Пройти модерацию очень не просто и долго.
К томуже чтоб попасть на главную нужно чтоб действительно у когото "встало" на ваш труд.
Если вам повезло разок за выходные продать на 1.5к не означает что так у всех.
Флаппи берд написали за 2 дня и приносил он более 50к в день.
Единичный случай не показателен.
+1
gillda
Плюсую
0
OkanE
Спасибо за отрезвление! а то меня тут сманивали броситься с головой в изучение UE для интерьеров... и что-то мне сразу показалась эта задумка геморной... особенно, после просмотра пары видео уроков на ютубе...
+1
gillda
Если преследовать цель, заработать с помощью архивиза через UE4 то у вас должен быть либо какой то очень крутой халявный ресурс или возможность разово продать это как услугу куда либо за большие деньги так, чтобы на время затрат это принесло осмысленны доход, а не так что 3 месяца ради 20к в месяц и на этом всё.

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

Все те, кто пытался - не смог (я про здешних, кто в целом то умеет это делать).
Я думаю, что есть смысл изучать UE4 для моб. приложений и каких либо графических "фичах" для веба. Что касается визуализации, сложно сказать, но лично мне это просто интересно и я это в любом случае изучу.
0
OkanE
Комментарий удален
0
OkanE
Какие-то странности с удалением поста, ну ладно)))
Мне предлагали использовать движок для визуалки интерьеров в европу, но получается, что заказчик не будет ждать, когда проект нарисуется, да и прогу освоить не так быстро. В максе я все нарисую быстрей, ну можно панораму сделать. Хорошо поразмыслили после данной публикации, и решили, что оно того не стоит совсем. Товарищ Quasar полностью прав.
0
gillda
Я не трогал твой пост
0
OkanE
не ты))) система, хотела пост перенести в ответ, а пост удалился и в ответ не переносится)))) не важно)