Вопрос по длинным мешам в левел дизайне UE4, BSP и т.п

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

Вопрос: Это норм, я годный? Проблем с объектом нет, свет лёг нормально (после манипуляций с настройками лайтмап)

Человек по имени Погорелов Максим, сказал:

"У тебя bounding box на всю модель будет гигантский, что будет рендерить всю модель, стены за стенами, то что ты не видишь то что перекрыто, весь объект, не говоря уже о том, что развёртка и текстура такой модели для приемлемого качества запеченого света будет огромных размеров."

Подскажите так же пожалуйста, какой должен быть тогда БОУНДИНГ БОКС и как СДЕЛАТЬ ЕГО ВИДИМЫМ, если это вообще можно.

Вопрос второй касаемо модульного построения уровня:

Мои меши тех же плинтусов сейчас неправильные, точнее в них есть стороны, которые не видит игрок и никогда не увидит по воле судьбы. Вот как сейчас:

То есть присутствуют лишние стороны, которые смеются над производительностью.

Однако, если я экспортирую этот объект в максима 3д (а объект этот я конвертировал в Static Mesh из BSP), удаляю ему две лишних стороны и возвращаю объект на сцену без 2ух лишних сторон. Простите, я пересчитал и вышло, что лишних сторон всё же 4.

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

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

Хм, после буилдинга света не выдало ошибок, значит я всё сделал правильно (ЕСЛИ НЕТ ТО СКАЖИТЕ ЧТО НЕ ТАК) и вопрос отпадает. Просто раньше выдавало ошибки, когда такие прозрачные объекты пытался засовывать, правда это было год назад... Но если я всё сделал неверно , скажите пожалуйста, как будет верно удалять лишние стороны? Стоит ли делать переразвёртку UV объекта после удаления лишних сторон, или и так сойдёт?

Спасибо заранее! Я Артём.

0
27 комментариев
Написать комментарий...
Варёный кот
Подскажите так же пожалуйста, какой должен быть тогда БОУНДИНГ БОКС и как СДЕЛАТЬ ЕГО ВИДИМЫМ, если это вообще можно.

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

после буилдинга света не выдало ошибок, значит я всё сделал правильно

То что билд прошел без ошибок это не значит что все хорошо и правильно

Вообще я бы тебе посоветовал делать все в 3D софте модулями и потом собирать в движке, там дел на пару минут, а времени и оптимизации кучу сэкономишь.

Ответить
Развернуть ветку
Lime is Fine

Точно ник не хочешь поменять?)

Ответить
Развернуть ветку
Ярослав

Как в анекдоте : 
Так на что хотите сменить свою фамилию?
почему вы решили что хочу сменить фамилию?! Я пришел имя менять

Ответить
Развернуть ветку
Hidanendo

Насчет баундинг бокса
Это, считай, ограничивающий бокс вокруг твоей модели, следовательно, его размер это крайние точки модели (Синяя рамка вокруг сфере на 1 пикче).
В анриле есть такая штука как HZB Occlusion - система, которая не рендирит то, что вне камеры. Работает, соответственно, по баундинг боксу, вот и представь, как ей проще будет работать - с маленькими объектами или большими
Насчет удаления сторон и борьбы за вершины
От размеров и сложности объекта зависит надо ли делать новую развертку или нет. К примеру, на плинтусах это будет бессмысленно - у тебя 4 стороны равной длины, которые лежат на развертке друг под другом, так что удалив две стороны, у тебя все равно останется еще 2, которые будут занимать ту же ширину.

Но, в конце концов, считаю это избыточным дрочевом за оптимизацию там, где это не так уж и надо. Графика вряд ли станет тем бутылочным горлышком

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Lime is Fine
 Вася дурачок, можно всегда сэмплировать текстуру по оси (и на объект такой длины брать крошечную текстуру и просто дублировать)

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

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Артём Идиотов
Автор

Если я заменю длинный плинтус на 5-7 штук коротких, это не будет хуже для оптимизации?

Ответить
Развернуть ветку
Иван

Нет, не будет, если все пределах разумного. У тебя тупо 6 из 7 мешей не будет загружено условно.

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Артём Идиотов
Автор

В том-то и дело, я по этому и длинный леплю и задаю вопрос о логичности этого)

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Артём Идиотов
Автор

А я просто не знаю как узнать рекомендуемый размер, где это глянуть. Интуитивно такие вещи я понимать не умею)

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Negentropy

он получит больше рендер колов

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Negentropy

ну если автор не понимает что такое рендер кол - то ему не за матчасть садится, а не в анриале сидеть

а цельные меши хорошо когда у тебя простая геометрия и ты можешь не просидать по рендер колам

Ответить
Развернуть ветку
offlife

мб подскажешь, как быть: я делаю левел, состоящий из одного 3-х этажного здания. Интерьер комнат и все такое, помимо дома только небольшой дворик. Загружать планирую сразу весь левел, не деля его на части. Как мне его делать, модулями или можно одним большим мешем? Я хз где получить инфу о таких вещах и что именно гуглить

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
offlife

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

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Антон Бобровский

Тримы и модулярку изучай, и вопросы отпадут. Не зацикливайся на оптимизации слишком сильно, к этому вопросу надо подходить разумно.

Ответить
Развернуть ветку
Евгений Серегин

Есть старое правило в 3д моделировании - треугольники не должны быть слишком вытянутые. У тебя они как раз такие. Это влечет за собой много проблем, начиная со света и нормалей и заканчивая тем, что движок будет обсчитывать то, что не нужно или не видно. Просчитывать на это коллизии, лайтмапы, будут огромные текстуры генериться и т.д.

Ответить
Развернуть ветку
Alexy Troubatchov

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

Ответить
Развернуть ветку
Ярослав

Если ты делаешь под рендер - делай как тебе удобно

Если ты делаешь под геймдев... то чекер будет растянут 
Так что проще будет порезать объект на несколько меньших 
Да это и с Z-файтом поможет бороться. 

Ответить
Развернуть ветку
Крам Вондратенко

Хотелось бы где-нибудь найти инфу о том, как вообще лучше делать оптимизацию на ue. Те же подгрузки и прочее. Я ньюфажик, так что просто хочу, чтобы в меня кинулись подобным ресурсом :D Как метанит для программистов - вот из такого разряда

Ответить
Развернуть ветку
Читать все 27 комментариев
null