ассет “EasyPerformanceMonitor – 2025” [Документация](https://docs.guardingpearsoftware.com/manual/EasyPerformanceMonitor/Setup.html) [ Unity Asset Store](https://assetstore.unity.com/packages/tools/utilities/easyperformancemonitor-2025-258079?srsltid=AfmBOop-gmQ12JQsVyzffQca10LbRGy0oxcvpX_dXnoVGFf58EzdMe_i#:~:text=) ![[IMG_0684.jpg]] В отличии от [[[Graphy] - Ultimate FPS Counter - Stats Monitor & Debugger|Graphy]] он умеет: - Отображать нагрузку на GPU - выводит количество отрисованных треугольников Убедился, что корректно работает на Android. Easy Performance Monitor не умеет выводить количество Draw Calls из коробки - Но это легко [[#Как добавить в ассет измерение Draw Calls|исправить]]. Я не был уверен, что ассет действительно выводит количество отрисованных треугольников на мобильных устройствах, поэтому перед покупкой решил спиратить ее. Чтобы в релизной версии билда мониторинг отображался, необходимо в префабе поставить галку напротив `Development build only`. ![[Снимок экрана 2025-05-23 в 10.26.54.png|300]] ### Обновление собственного репозитория с ассетом до версии из Asset Store Я создал приватный репозитория под ассет, потому что вношу небольшие изменения. Изменения вношу так, чтобы не редактировать исходный файлы ассета, а создавать новые. Так как предполагаются незначительные изменения по сравнению с версией из Asset Store и чтобы пока не заморачиваться, я просто скачиваю из Asset Store новую версию ассета и закидываю в папку с репозиторием и выбираю "заменить все совпадения". - Важно перед этим не забыть закрыть Unity-редактор, а иначе unity будет пытаться пересоздать .meta всех файлов в ассете. ### Нюансы У префаба `Monitor` есть вложенный префаб `GPU Time` (на сцене он отображается как `GPU`), данный префаб использует скрипт `GpuFrameTimeProvider`. В скрипте для мобильных устройств GPU подсчитывается с помощью вызова cpuRenderThreadFrameTime, по этой причине: [[gpuFrameTime возвращает некорректное время работы GPU]] ### Как добавить в ассет измерение Draw Calls 1. Дублируем префаб. Например: `EasyPerformanceMonitor/Prefabs/Components/Vertices - Component.prefab` 2. Переименовываем префаб в `Draw Calls - Component.prefab` 2. Заменяем компонент `GpuVerticesProvider` на `GpuDrawCallsProvider` - По сути, это делается только удалением старого компонента и добавлением нового 3. Заполняем поля в новом компоненте так же, как это было в старом компоненте. 4. Так как префаб `Vertices - Component.prefab` является частью другого префаба `Monitor`, то добавляем в `Monitor` наш новый префаб. 5. Настраиваем у нового префаба расположение на экране. ### Описание от GPT **Основные возможности:** Отображает **детальные показатели производительности** в игре. В частности, выводит **количество Draw Calls и отрисованных треугольников** в каждом кадре, время рендеринга кадра, FPS, загрузку CPU/GPU, использование памяти и др. Поддерживается также мониторинг дисковой и сетевой статистики, а через API можно добавлять собственные метрики. **Рендер-пайплайны:** Совместим со всеми основными режимами рендеринга – Built-in, URP, HDRP. **Версии Unity:** Поддерживаются актуальные версии (Unity 2021.3 LTS и выше, вплоть до Unity 2025). **Цена:** Коммерческий ассет, стоимость порядка **€6** на Asset Store (на март 2025). **Производительность:** Инструмент разработан с расчётом на **низкий оверхед** – интегрируется добавлением prefab в сцену и предназначен для постоянной работы даже на мобильных устройствах. Вывод статистики реализован эффективно (через новое API ProfilerRecorder), чтобы минимизировать влияние на игру.