Вопрос по оптимизации локации на мобильные устройства

Раздел, посвящённый самому важному - скорости.

Вопрос по оптимизации локации на мобильные устройства

Сообщение akkelman 15 май 2012, 23:20

Всем привет. Начал изучать Юнити, в качестве лягушки решил препарировать хорошо мне знакомую территорию игры Stalker, конкретно, хочу сделать что-то вроде порта на андроид-устройства. Заного перемоделил кордон на относительно Low-poly. И вот вопрос возник. Как лучше сделать. Т.е. для тех кто не в курсе- дана обширная такая открытая локация. На ней стоят различные домики группками и каждая группка отстоит от другой на приличном расстоянии. Каждый домик у меня на 2-4 тысячи полигонов. Сейчас каждый дом поделён на меши, исходя из типа материала (кирпич, дерево, доски, обои, краска итд). Всего в среднем это порядка 15 материалов-мешей на дом. Материалы у разных домиков процентов на 90 повторяются (те же кирпич, доски шифер есть в составе почти всех домов). Вот и думаю что лучше:
1. Оставить как есть. Т.е. Зашел на холмик, глянул на деревушку сталкеров (7 домов да ещё 3 бункера да кучу всяких столбов, старых покрышек и прочих предметов незамысловатого сталкерского быта). И охренел от колличества геймобъектов (и полигонов) хотя по драуколам (со статик бачингом) будет всё более- менее (если я правильно понимаю, бачинг должен вроде как объединять в одну прорисовку простые одноматериаловые меши)
2. Всё-таки бъединить домик в одномеш. Тогда геймобъектов будет в те-же 15 раз меньше, но зато каждый домик + 15 дракул (это на одну только деревню и не считая всю прочую природу под 200 штук!)
3. Объединить вообще все домики в группе в 1 меш- мало объектов, мало дракул, но капец сколько полигонов! Ещё из плюсов- этот суперобъект можно на расстоянии как угодно лодить.
4. Объединить домик в 1 меш и сделать LOD-ы на расстоянии скажем до 10 метров- домик расскрашен "во все цвета радуги", на расстоянии 10-30 метров- меш тот- же, но покрашен в какойнить атлас. На расстоянии >30- вообще по всем параметрам что-нибудь упрощённое? Вот всем хорош этот вариант кроме того, что крашенный в атлас домик будет ну такой говнянский на вид и видно то это на расстоянии 10 метров будет так хорошо... А увеличивать расстояние второго лода- это получится практически тот же вариант 1 (дома в группах расположены тесно).
5. Каким то образом лодить многомешевый домик на одномешевый на расстоянии уже метров >20, В поле зрения тогда будет попадать максимум 2-3 домика материалы у которых будут бачиться, а стрёмнопокрашенный атласом лод2 не так мерзко буддет смотреться на расстоянии >20 метров как в 10. Но ума не приложу как сделать эту систему. Все общедоступные оперируют одномешевыми лодами. Т.е. меш в 5000 полигонов меняется на меш 1000 полигонов. А тут каким то образом нужно группу из мешей подменять на один меш да ещё как то подогнать его точно в нужное место... не для моего это ума ещё, да и не знаю- оправдано ли...
Или есть ещё какие варианты?
akkelman
UNIт
 
Сообщения: 67
Зарегистрирован: 10 мар 2012, 17:21

Re: Вопрос по оптимизации локации на мобильные устройства

Сообщение magoga 25 июн 2012, 14:44

ну вообще последний вариант на мой взгляд самый правильный, но и самый трудоемкий.
есть скрипт для макса, для создания атласов из мультиматериалов,
в нем есть все что нужно, он даже автоматически генерирет меш, в том случае если на доме тайлищаяся текстура. в общем увидишь.
http://www.scriptspot.com/3ds-max/scripts/texture-atlas-generator
я бы сделал именно так: на близком расстоянии у тебя дом с кучей мешей и материалов. на дальнем у тебя дом с 1 мешем 1 материалом, причем если вообще по хорошему, я бы сделал 1 текстуру на все дома дальнего лода. или 1 текстуру на группу домов дальнего лода. так будет еще немного шустрее.
такой способ немгого больше места в оперативке займет, но если текстуры делать не оч большие, то думаю не критично будет.
Аватара пользователя
magoga
UNIт
 
Сообщения: 98
Зарегистрирован: 22 мар 2010, 21:08


Вернуться в Оптимизация

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3