Множество ГО в 2Д-шке

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

Множество ГО в 2Д-шке

Сообщение WhiteDevil 15 июн 2011, 21:17

Всем драсти.
Делаем 2д игрушку. Выбираем каким образом будем отображать объекты ландшафта, тестим конкретно на деревьях.
Варианта 3:
- просто спрайтовая анимация дерева
- Объект состоит из 6 подобъектов (полигонов) - ветки и стволы, при этом каждый кусок имеет на себе анимацию. Ну типо ветерок пошаливает.
- Тот же составной объект, но каждая часть имеет ригид. При этом крона обладает пачкой HingeJointов, которые крепят к ней ветки.

Боссы хотят именно третий вариант, так как присутствуют события, вроде взрыва рядом, проходящее торнадо и так далее. И хотелось бы, чтобы красиво от этих катаклизмов вела себя и растительность.

Итак, в сцене присутствуют 160 деревьев по 6 кусков = 960 объектов
стат показывает 1.9к трианглов

Результат:
анимированные бревна: 250 фпс
физические бревна: 140 фпс

В обоих случаях 96 драу колов и 960 сбатченных объектов (то есть все)

А вот и тема вопроса. С пустой сценой стат показывает полторы тысячи фпс. Компутир мощен достаточно: 2 проца по 3.0, видео - жфорс жт 250
Когда мы построили физические деревья, посчитали что такое падение фпс сугубо изза физики. Но как видно из замеров, затраты только на чистый рендер (кстати, даже с выключенной анимацией) просто огромны. То есть падение объясняется только большим количеством го. Но и тут вопрос, они все сбатчены, получается где-то 1 вызов на 10 деревьев. Выходит, что он столько фпс на процесс батчинга тратит?

Тут я положил демо проект:
http://ifile.it/anzkbty/Trees.rar

В ней 2 сцены: с анимируемыми бревнами и физическими.

Спасибо ин адванс :)
Аватара пользователя
WhiteDevil
UNIверсал
 
Сообщения: 455
Зарегистрирован: 19 дек 2010, 15:55

Re: Множество ГО в 2Д-шке

Сообщение discouraged_one 16 июн 2011, 12:10

remote profiler пробывали? усё пакажет 8)
плюс замерять надо в standalone а не editor (на всякий случай если вы не так делали)
плюс 250 fps 150 fps не такая уж и разница - миллисекундами мерьте ;-)
Unity Technologies
Аватара пользователя
discouraged_one
Unity Technologies
 
Сообщения: 197
Зарегистрирован: 19 май 2010, 15:56

Re: Множество ГО в 2Д-шке

Сообщение Neodrop 16 июн 2011, 12:15

Ещё есть NVidia PerfHUD
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

Re: Множество ГО в 2Д-шке

Сообщение WhiteDevil 18 июн 2011, 13:33

Пасиб за советы, левел ап в профайлинге получил :)
Но одна штука смущает в оптимизаторе. Делаем разные замеры и так выходит, что одна сцена с 400 объектами и каждый со своим спрайтшитом (то есть оптимизации никакой, выводит 400дк) и в результате получается гдето 250-300 фпс. А в другом случае, те же 400 объектов, но анимированные и сбатченные. Всего 12 дк и 400 батчей, при этом фпс поднялось на 50-100 кадров. Если смотреть конкретно на рендер, то спрайтшитовый производится на 1 милисекунду дольше. Моя непонятка в том, почему такая разница между ДрауКоллами, а производительность примерно та же
Аватара пользователя
WhiteDevil
UNIверсал
 
Сообщения: 455
Зарегистрирован: 19 дек 2010, 15:55

Re: Множество ГО в 2Д-шке

Сообщение Neodrop 18 июн 2011, 15:08

Мне кажется, что прирост в 30% (было 300 стало 400) это совсем не "почти такая же" производительность.
И не стоит забывать, что батчинг тоже не бесплатен. Поэтому не ждите от него прирост на 100500%
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт


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

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

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