Unity 6 Preview - тест GPU Resident Drawer

Давно наблюдаю хайп вокруг новой фичи в Unity 6, которая в теории должна сильно бустануть производительность проектов на движке. Захотел сегодня провести простенький тест на HDRP примере и результаты скорее удивили.

Unity 6 Preview - тест GPU Resident Drawer

О чем речь

The GPU Resident Drawer automatically uses the BatchRendererGroup API to draw GameObjects with GPU instancing, which reduces the number of draw calls and frees CPU processing time.

docs.unity3d

Подготовка

Значит беру версию движка 6000.0.019f1, а так же версию 2022.3.15f1. В каждом создаю с нуля проект со стандартным примером под HDRP, благо он и под новую версию есть уже. Настройки в Unity 6 меняю по их мануалу. Выключаю вертикальную синхронизацию, снимаю ограничение по фпс и еще накидываю простой скрипт с Time.frameCount / Time.time (впрочем Nvidia мне и так фпс показывала).

В редакторе смотрим

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

Проект под 2022.3, довольно много батчей
Проект под 2022.3, довольно много батчей
Проект под 6, есть какие то минимальные изменения, возможно когда они делали пример под эту версию чуть меняли, но минимально. Только вот где фпс? Может редактор тяжелее стал.
Проект под 6, есть какие то минимальные изменения, возможно когда они делали пример под эту версию чуть меняли, но минимально. Только вот где фпс? Может редактор тяжелее стал.

Итак, потирая ручки я применил настройки и предвкушал буст

И draw calls реально сильно уменьшились, а так же касты теней в два раза. Но чет фпс не многообещающий.
И draw calls реально сильно уменьшились, а так же касты теней в два раза. Но чет фпс не многообещающий.

Билд

Как разработчики и обещают, время билда сильно увеличилось, если в 2022 это заняло около 20 минут, то в 6 чуть меньше часа.

Билд в 2022 выдает 174 фпс, весит 341 мб
Билд в 2022 выдает 174 фпс, весит 341 мб
Билд в 6 с RD выдает 186 фпс и весит 408 мб
Билд в 6 с RD выдает 186 фпс и весит 408 мб

В другом месте сравнение еще менее заметно

Ну типа в среднем на 10 фпс выше и все, если сцена не насыщена инстансами.
Ну типа в среднем на 10 фпс выше и все, если сцена не насыщена инстансами.

Итог

Ну честно я ожидал большего, особенно когда увидел как заметно уменьшились draw calls. С другой стороны от меня потребовалось поставить одну галочку и просто ждать долго билда. А еще вероятно редактор стал тяжелее, это прям не очень хорошо если так, 2022 с каким-нибудь Odin задыхается и так.

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

А пока можете поддержать меня и поиграть в CyberCorp :) У нас кстати сегодня будет обновление с новым игровым режимом и множеством улучшений.

77
11
16 комментариев

Ну разница кстати еще в тенях заметно, где-то он отсутствуют в 6, а где-то они мягче

2
Ответить

думаю по мелочи иначе настроили пример, но на первый взгляд примерно те же настройки стоят

1
Ответить

Ну честно я ожидал большего, особенно когда увидел как заметно уменьшились draw calls.

Ну как и наниты в УЕ, получается. Вроде все круто на презентациях, а на деле скорее пук-среньк и минус 10 фпс

Но такие штуки скорее больше на сценах с кучей ассетов будут давать буст. А на небольших сценах наоборот - медленнее работать (ну у нанитов оно примерно так)

Ответить

ну, в данном случае плюс 10 фпс :)

Ответить

а на деле скорее пук-среньк и минус 10 фпсна деле такие тестировщики запускают сцену с парой кубиков и ожидают буста фпс, не понимая для чего вообще нужен nanite.
Запусти демку матрицы с нанит и без, а не свои жалкие поделки из кубиков?

Ответить

"а на деле скорее пук-среньк и" 426 миллиардов полигонов на экране.

Ответить

Я чёт прикола не понял, о чем пост ваще? В курсе что такое ГПУ инстансинг и зачем его придумали? Насри травы на весь экран и потом скидывай тест, а так это просто смешно. Это фича для конкретного юзкейса, и из воздуха фепесов тебе никто не прибавит

Ответить