Вопрос по длинным мешам в левел дизайне UE4, BSP и т.п
Ранее мной был задан вопрос, который содержал в себе три подвопроса, по поводу большого кол-ва BSP, целесообразности их использования в конечном результате и по поводу проблем с картой освещения. С этим мне помогли. Но я так и не понял по поводу модульного построения левела, а конкретнее использования длинных мешей в скелете уровня. Под длинными мешами я подразумеваю вот это:
Вопрос: Это норм, я годный? Проблем с объектом нет, свет лёг нормально (после манипуляций с настройками лайтмап)
Человек по имени Погорелов Максим, сказал:
"У тебя bounding box на всю модель будет гигантский, что будет рендерить всю модель, стены за стенами, то что ты не видишь то что перекрыто, весь объект, не говоря уже о том, что развёртка и текстура такой модели для приемлемого качества запеченого света будет огромных размеров."
Подскажите так же пожалуйста, какой должен быть тогда БОУНДИНГ БОКС и как СДЕЛАТЬ ЕГО ВИДИМЫМ, если это вообще можно.
Вопрос второй касаемо модульного построения уровня:
Мои меши тех же плинтусов сейчас неправильные, точнее в них есть стороны, которые не видит игрок и никогда не увидит по воле судьбы. Вот как сейчас:
То есть присутствуют лишние стороны, которые смеются над производительностью.
Однако, если я экспортирую этот объект в максима 3д (а объект этот я конвертировал в Static Mesh из BSP), удаляю ему две лишних стороны и возвращаю объект на сцену без 2ух лишних сторон. Простите, я пересчитал и вышло, что лишних сторон всё же 4.
Вот так выглядит он после удаления лишних сторон. То есть сейчас так как должно быть, так как и строят нормальные люди уровни
Теперь я возвращаю данный объект, но под другим названием, чтобы не произошло замещения основного. Выходит вот так, то есть собсна как мне и нужно:
Хм, после буилдинга света не выдало ошибок, значит я всё сделал правильно (ЕСЛИ НЕТ ТО СКАЖИТЕ ЧТО НЕ ТАК) и вопрос отпадает. Просто раньше выдавало ошибки, когда такие прозрачные объекты пытался засовывать, правда это было год назад... Но если я всё сделал неверно , скажите пожалуйста, как будет верно удалять лишние стороны? Стоит ли делать переразвёртку UV объекта после удаления лишних сторон, или и так сойдёт?
Спасибо заранее! Я Артём.
В голос с тебя, он про то что даже если на изображении будет лишь пиксель твоего длинного меша он будет рендерится полностью.
после буилдинга света не выдало ошибок, значит я всё сделал правильноТо что билд прошел без ошибок это не значит что все хорошо и правильно
Вообще я бы тебе посоветовал делать все в 3D софте модулями и потом собирать в движке, там дел на пару минут, а времени и оптимизации кучу сэкономишь.
Точно ник не хочешь поменять?)
Как в анекдоте :
Так на что хотите сменить свою фамилию?
почему вы решили что хочу сменить фамилию?! Я пришел имя менять
Насчет баундинг бокса
Это, считай, ограничивающий бокс вокруг твоей модели, следовательно, его размер это крайние точки модели (Синяя рамка вокруг сфере на 1 пикче).
В анриле есть такая штука как HZB Occlusion - система, которая не рендирит то, что вне камеры. Работает, соответственно, по баундинг боксу, вот и представь, как ей проще будет работать - с маленькими объектами или большими
Насчет удаления сторон и борьбы за вершины
От размеров и сложности объекта зависит надо ли делать новую развертку или нет. К примеру, на плинтусах это будет бессмысленно - у тебя 4 стороны равной длины, которые лежат на развертке друг под другом, так что удалив две стороны, у тебя все равно останется еще 2, которые будут занимать ту же ширину.
Но, в конце концов, считаю это избыточным дрочевом за оптимизацию там, где это не так уж и надо. Графика вряд ли станет тем бутылочным горлышком
Комментарий недоступен
вообще говоря все что на скрине можно упаковать в тримы. Но, кажется, для тс это пока за гранью сложности. надо бы разобраться с чем-то более базовым. Например с тем, чтобы начать мыслить модулями, а не длинными палками.
Комментарий недоступен
Если я заменю длинный плинтус на 5-7 штук коротких, это не будет хуже для оптимизации?
Нет, не будет, если все пределах разумного. У тебя тупо 6 из 7 мешей не будет загружено условно.
Комментарий недоступен
Комментарий недоступен
В том-то и дело, я по этому и длинный леплю и задаю вопрос о логичности этого)
Комментарий недоступен
А я просто не знаю как узнать рекомендуемый размер, где это глянуть. Интуитивно такие вещи я понимать не умею)
Комментарий недоступен
он получит больше рендер колов
Комментарий недоступен
ну если автор не понимает что такое рендер кол - то ему не за матчасть садится, а не в анриале сидеть
а цельные меши хорошо когда у тебя простая геометрия и ты можешь не просидать по рендер колам
мб подскажешь, как быть: я делаю левел, состоящий из одного 3-х этажного здания. Интерьер комнат и все такое, помимо дома только небольшой дворик. Загружать планирую сразу весь левел, не деля его на части. Как мне его делать, модулями или можно одним большим мешем? Я хз где получить инфу о таких вещах и что именно гуглить
Комментарий недоступен
Спасибо за ответ. У меня есть отсканированная модель реального здания и я думал как-то ее использовать (есть крутые куски стен, откуда я хотя бы нормалку хотел забрать), но тоже прихожу к подобному решению. Изучаю материалы сейчас. Хз на первый взгляд как разбить здание на компоненты, если это не однообразная панелька. Буду пробовать.
Комментарий недоступен
Тримы и модулярку изучай, и вопросы отпадут. Не зацикливайся на оптимизации слишком сильно, к этому вопросу надо подходить разумно.
Есть старое правило в 3д моделировании - треугольники не должны быть слишком вытянутые. У тебя они как раз такие. Это влечет за собой много проблем, начиная со света и нормалей и заканчивая тем, что движок будет обсчитывать то, что не нужно или не видно. Просчитывать на это коллизии, лайтмапы, будут огромные текстуры генериться и т.д.
Ты, наверное имел ввиду левел арт? Везде где я работал левел дизом, никто из левел дизайнеров о таких штуках, как запекание света на плинтусах, даже и не думал. Задача левел диза в том, чтобы создать грейбокс уровень с интересным и увлекательным геймплеем. Красоты наводят левел арты, левел дизы делают геймплей.
Если ты делаешь под рендер - делай как тебе удобно
Если ты делаешь под геймдев... то чекер будет растянут
Так что проще будет порезать объект на несколько меньших
Да это и с Z-файтом поможет бороться.
Хотелось бы где-нибудь найти инфу о том, как вообще лучше делать оптимизацию на ue. Те же подгрузки и прочее. Я ньюфажик, так что просто хочу, чтобы в меня кинулись подобным ресурсом :D Как метанит для программистов - вот из такого разряда