Profiler Справочная информация о счетчиках
Unity имеет встроенный счетчики профилеров которые вы можете использовать для сбора и отображения показателей в настраиваемом Profiler В следующих таблицах перечислены доступные встроенные счетчики профилирования. Эта информация также доступна через ProfilerRecorder API и в Profiler редактор модулей так что вы можете добавить их в пользовательский Profiler В нижеследующих таблицах приводится список счетчиков профилеров, доступных в модуле Unity:
- Счетчики профилирования доступа к файлам
- Счетчики профилирования загрузки активов
- Счетчики профилирования памяти
- Счетчики физики
- 2D Счетчики физики
- Счетчики профилеров рендеринга
- Счетчики виртуальных профилеров текстур
Счетчики профиля доступа к файлам
Доступные счетчики профилирования доступа к файлам и их наличие в проигрывателях выпуска (не разработки) выглядят следующим образом:
| Profiler счетчик | Описание | Доступность в релизных (неразработанных) плеерах |
|---|---|---|
| Байты файла Читать | Общее количество байтов информации Unity, прочитанных из этого файла в течение выбранных кадров. | Недоступно |
| Байтов файла, записанных | Общее количество байтов информации, записанной Unity в этот файл в течение выбранных кадров. | Недоступно |
| Обработчики файлов Открыть | Общее число файловых обработчиков, открытых в любое время в течение этого кадра. Это включает файлы, которые Unity открывает и закрывает в одном и том же кадре. | Недоступно |
| Чтение файла завершено | Число чтений файлов, завершенных в течение этого кадра. | Недоступно |
| Начато чтение файла | Количество чтений файлов, начатых в течение этого кадра | Недоступно |
| файл ищет | Число операций поиска файлов, выполненных в локальной файловой системе в этом кадре. Операция поиска файлов включает поиск по содержимому файла. | Недоступно |
| Закрытые файлы | Общее число файлов, успешно закрытых в локальной файловой системе в этом кадре. | Недоступно |
| Открытые файлы | Общее количество файлов, успешно открытых в локальной файловой системе в этом кадре. | Недоступно |
| Считывает в полете | Общее число операций чтения, которые были в процессе в течение этого периода. | Недоступно |
Дополнительные сведения о сборе данных доступа к файлам см. в разделе Доступ к файлам Profiler ссылка на модуль.
Счетчики профилирования загрузки ассетов
Доступные счетчики профилирования загрузки ассетов и доступность в проигрывателях выпуска (не разработки) выглядят следующим образом:
| Profiler счетчик | Описание | Доступность в релизных (неразработанных) плеерах |
|---|---|---|
| Аудио чтения | Количество байтов, запрошенных от AsyncReadManager для загрузки аудио. | Недоступно |
| Объекты читают | Количество байтов, запрошенных от AsyncReadManager скриптами в пакете Организации. | Недоступно |
| Считывает сетку | Число байт, запрошенных от AsyncReadManager для загрузки сетки. | Недоступно |
| Другие читает | Число байт, запрошенных от AsyncReadManager для неуказанной подсистемы. | Недоступно |
| Скрипт читает | Количество байтов, запрошенных от AsyncReadManager через скрипт API. | Недоступно |
| Текстура читает | Количество байтов, запрошенных от AsyncReadManager для загрузки текстуры. | Недоступно |
| Виртуальная текстура читает | Количество байтов, запрошенных от AsyncReadManager для виртуального текстурирования. | Недоступно |
Дополнительные сведения о сборе данных ассетов см. в разделе Загрузка ассетов Profiler ссылка на модуль.
Счетчики профилирования памяти
В следующей таблице перечислены доступные счетчики профилирования памяти и их доступность в проигрывателях выпуска (не разрабатываемых).
Совет: Вы можете использовать методы Object.FindObjectsByType для поиска объектов определенных типов, а затем передать эту информацию Profiler.GetRuntimeMemorySizeLong для получения их объема памяти и затем реализовать эту информацию в проигрывателях выпуска. Например, чтобы получить счетчики для Mesh Count или Mesh Memory, используйте Object.FindObjectsByType<Mesh>().length и затем передайте эти записи GetRunTimeMemorySizeLong. Используйте только Find и связанный с ним APIs в коде разработки.
GetRunTimeMemorySizeLong влияет на производительность, и не предоставляет количества графической памяти в сборках выпуска.
| Profiler счетчик | Описание | Доступность в релизных (неразработанных) плеерах |
|---|---|---|
| AnimationClip Количество | Общее количество загруженных AnimationClips. | Недоступно |
| AnimationClip Память | Общий объем памяти, загруженной AnimationClips, использованной в байтах. | Недоступно |
| Память приложения | Общий объем выделенной памяти в соответствии с операционной системой платформы в байтах. | Имеющиеся |
| Память резидента приложения | Общий объем резидентной памяти в соответствии с операционной системой платформы в байтах. | Имеющиеся |
| Количество активов | Общее число загруженных ассетов. | Недоступно |
| Зарезервированная аудиопамять | Оценка зарезервированной памяти аудиосистемы в байтах. | Имеющиеся |
| Используемая память аудио | Оценка использования памяти аудиосистемой в байтах. | Имеющиеся |
| AudioClip Количество | Общее количество загруженных AudioClips. | Недоступно |
| AudioClip Память | Общий объем памяти, загруженной AudioClips, использованной в байтах. | Недоступно |
| GameObject Количество | Общее число экземпляров GameObject в сцене. | Недоступно |
| GC Выделено в кадре | Общий размер управляемых выделений в выбранном кадре в байтах. | Недоступно |
| GC Количество кадров | Сумма управляемых ассигнований в выбранном блоке. | Недоступно |
| GC Зарезервированная память | Общий размер стека, зарезервированного для управляемого кода в байтах. Эта память представляет собой мусор , собранный. | Имеющиеся |
| GC Используемая память | Использованный размер стека, используемый управляемым кодом, в байтах. Эта память представляет собой мусор , собранный. | Имеющиеся |
| Зарезервированная память Gfx | Оценочный объем памяти, зарезервированной для текстур, целей отображения, шейдеров и данных сетки в байтах. | Недоступно |
| Используемая память Gfx | Оценочный объем памяти, используемый драйвером для текстур, целей отображения, шейдеров и данных сетки в байтах. | Недоступно |
| Количество материалов | Общее количество загруженных материалов. | Недоступно |
| Материальная память | Общее количество загруженных материалов, использованных в памяти, в байтах. | Недоступно |
| Число ячеек | Общее число загруженных мешей. | Недоступно |
| Сетка памяти | Общий объем памяти, использованной для загрузки Meshes, в байтах. | Недоступно |
| Количество объектов | Число экземпляров основного объекта в приложении. | Недоступно |
| Физика Используемая память | Общий объем памяти, использованный системой физики, в байтах. | Недоступно |
| Физика зарезервирована Memory(2D) | Общий объем памяти, зарезервированной физикой 2D в байтах. | Недоступно |
| Profiler Зарезервированная память | Память, которую функция Profiler резервирует у системы в байтах. | Имеющиеся |
| Profiler Используемая память | Память, используемая функцией Profiler, в байтах. | Имеющиеся |
| Scene Количество объектов | Общее число динамических экземпляров UnityEngine.Object. Это число включает счетчик GameObject Count, плюс общее число компонентов и все, что не является ассетом в сцене. |
Недоступно |
| Общая используемая память системы | Общая память, используемая всеми приложениями, запущенными на устройстве, в байтах. | Имеющиеся |
| Используемая память системы | Общее количество резидентной памяти в соответствии с операционной системой платформы в байтах. Это значение совпадает со значением App Resident Memory. | Имеющиеся |
| Количество текстур | Общее количество загруженных текстур | Недоступно |
| Память текстуры | Общий объем памяти, использованный для загрузки текстур, в байтах. | Недоступно |
| Общая зарезервированная память | Общая память, зарезервированная в операционной системе для приложения, в байтах. | Имеющиеся |
| Общая использованная память | Общая память, используемая приложением, в байтах. | Имеющиеся |
| Зарезервированная видеопамять | Оценка зарезервированной памяти видеосистемы в байтах. | Имеющиеся |
| Используемая видеопамять | Расчетное использование памяти видеосистемы в байтах. | Имеющиеся |
Дополнительные сведения о сборе данных памяти см. в Модуль Memory в Profiler.
Счетчики физики профилирования
Доступные счетчики физики профилера и доступность в выпуске (не разработки) игроков являются следующими:
| Profiler счетчик | Описание | Доступность в релизных (неразработанных) плеерах |
|---|---|---|
| Активные ограничения | Число примитивных ограничений, обработанных физической системой. | Недоступно |
| Активные динамические тела | Число Rigidbody компоненты и ArticulationBody компоненты, которые не в сон state. |
Недоступно |
| Активные кинематические тела | Количество активных компонентов Kinematic Rigidbody. | Недоступно |
| Сочленения | Количество компонентов ArticulationBody в сцене |
Недоступно |
| Широкофазный добавляет | Общее число коллайдеров, используемых широкофазный алгоритм добавлено. | Недоступно |
| Широкофазная добавляет/убирает | Общее число коллайдеров, добавленных или удаленных широкофазным алгоритмом. | Недоступно |
| Широкофазный удаляет | Общее число коллайдеров, которые были удалены алгоритмом широкофазной обработки. | Недоступно |
| Коллайдеры Синхронизированы | Количество коллайдеров, синхронизированных с Transforms. | Недоступно |
| Непрерывное перекрытие | Число событий перекрытия, для разрешения которых Unity использовал непрерывное обнаружение столкновений. | Недоступно |
| Дискретные перекрытия | Количество событий перекрытия, для разрешения которых Unity использовал дискретное обнаружение столкновений. | Недоступно |
| Динамические тела | Количество компонентов Rigidbody и компонентов ArticulationBody. |
Недоступно |
| Модифицированные перекрытия | Число перекрывающихся событий, которые Unity использовали Модификация контакта API изменить. | Недоступно |
| Узкофазные потерянные касания | Общее количество столкновений, которые были потеряны с момента предыдущего кадра. | Недоступно |
| Наузофазные новые прикосновения | Общее число столкновений, которые появились как новые после предыдущего кадра. | Недоступно |
| Узкофазные клавишные | Общее количество столкновений, которые были либо потеряны, либо появились как новые после предыдущего кадра. | Недоступно |
| Наложения | Число событий перекрытия. Перекрывающее событие происходит, когда коллайдеры перекрываются друг с другом. | Недоступно |
| Физика Запросы | Общее количество физических запросов, таких как Raycasts и shapecasts. | Недоступно |
| Жесткие кузова Синхронизировано | Количество компонентов Rigidbody, синхронизированных с Transforms. | Недоступно |
| Статические коллайдеры | Количество colliders, которые не имеют компонента Rigidbody или ArticulationBody | Недоступно |
| Наложение триггеров | Число перекрывающихся событий с коллайдерами-триггерами (считывается в парах). | Недоступно |
Дополнительные сведения о сборе физических данных см. в Справочник по модулю Physics в Profiler.
2D Счетчики профилеров физики
Доступные счетчики физики профилера 2D и их наличие в релизных (не разрабатываемых) игроках выглядят следующим образом:
| Profiler счетчик | Описание | Доступность в релизных (неразработанных) плеерах |
|---|---|---|
| Добавлены контакты | Число контактов, добавленных в данном кадре. Это включает как контакты Коллизии, так и контакты Триггера. | Недоступно |
| Спящие тела | Число Rigidbody2D, которые спали (не бодрствовали) и присутствовали в этом кадре. | Недоступно |
| Спящие формы | Число физических форм, которые спали (не бодрствовали) и присутствовали в этом кадре. | Недоступно |
| Пробужденные тела | Число Rigidbody2D, которые были бодрствующими и присутствовали в этом кадре. | Недоступно |
| Пробудившиеся формы | Число физических форм, которые были бодрствующими и присутствовали в этом кадре. | Недоступно |
| Широкофазные пары | Число широкофазных пар, которые система физики обработала в этом кадре. | Недоступно |
| Широкофазные обновления | Число обновлений широкофазного режима, обработанных системой физики в этом кадре. | Недоступно |
| Коллизия Вход | Количество обратных вызовов OnCollisionEnter2D, которые система физики вызвала в этом кадре. | Недоступно |
| Выход в случае столкновения | Количество обратных вызовов OnCollisionExit2D, которые система физики вызвала в этом кадре. | Недоступно |
| Столкновение остановка | Количество обратных вызовов OnCollisionStay2D, которые система физики вызвала в этом кадре. | Недоступно |
| Непрерывные тела | Количество Rigidbody2D с Continuous режимом обнаружения столкновений, которые присутствовали в этом кадре. |
Недоступно |
| Дискретные тела | Количество Rigidbody2D с Discrete режимом обнаружения столкновений, которые присутствовали в этом кадре. |
Недоступно |
| Динамические тела | Количество Rigidbody2D с типом кузова Dynamic, которые присутствовали в этом кадре. |
Недоступно |
| Динамические формы | Количество физических форм, которые были и Dynamic и присутствовали в этом кадре. |
Недоступно |
| GetContacts Запросы | Число запросов на поиск контактов, которые система физики вызвала для этого кадра. Это включает запросы, такие как Physics2D.GetContacts, Collider2D.GetContactsи Rigidbody2D.GetContacts. |
Недоступно |
| IsTouching Запросы | Число запросов, связанных с контактом, которые система физики вызвала для этого кадра. Это включает запросы типа Physics2D.IsTouching, Collider2D.IsTouchingи Rigidbody2D.IsTouching. |
Недоступно |
| Кинематические тела | Количество Rigidbody2D с типом кузова Kinematic, которые присутствовали в этом кадре. |
Недоступно |
| Перекрывающиеся запросы | Число перекрывающихся запросов, которые система физики вызвала для этого кадра. Это включает запросы типа Physics2D.OverlapPoint, Physics2D.OverlapCircleи Collider2D.OverlapCollider. |
Недоступно |
| Запросы частиц | Количество запросов, которые Particle System вызвал в этом кадре. | Недоступно |
| Запросы Raycast | Число запросов, основанных на лучах или линиях, которые система физики вызвала для этого кадра. Это включает запросы типа Physics2D.Raycast и Physics2D.Linecast. |
Недоступно |
| Удалены контакты | Количество контактов, которые система физики удалила в этом кадре. Это включает как контакты столкновения, так и контакты триггера. | Недоступно |
| Запросы Shapecast | Число запросов, которые система физики вызвала для этого кадра. Это включает запросы типа Physics2D.BoxCast, Physics2D.CircleCastи Collider2D.Cast. |
Недоступно |
| Решение непрерывных островов | Число островов, решенных при обработке шага непрерывного решения. | Недоступно |
| Решение дискретных островов | Число контактных островов, решенных при обработке шага дискретного решения. | Недоступно |
| Число моделей решателей | Количество раз, когда Unity симулировал все физические сцены автоматически, или при вызове Physics2D.Simulate или PhysicsScene2D.Simulate. |
Недоступно |
| Мировой счет Solver | Общее количество сцен физики, которые присутствовали в этом кадре. | Недоступно |
| Статические тела | Количество Rigidbody2D с типом кузова Static, которые присутствовали в этом кадре. |
Недоступно |
| Статическое | Число физических форм, которые были как статическими, так и присутствовали в этом кадре. | Недоступно |
| Итого, органы | Общее количество Rigidbody2D, которые присутствовали в этом кадре. |
Недоступно |
| Всего обратных вызовов | Общее число обратных вызовов OnCollisionEnter2D, OnCollisionStay2D, OnCollisionExit2D, OnTriggerEnter2D, OnTriggerStay2D и OnTriggerExit2D, вызванных физикой в этом кадре. |
Недоступно |
| Всего контактов | Общее количество контактов, которые присутствовали в этом кадре. Это включает как контакты Коллизии, так и контакты Триггера. | Недоступно |
| Всего соединений | Общее количество любых Joint2D, которые присутствовали в этом кадре. |
Недоступно |
| Всего форм | Общее число Физика формы которые присутствовали в этом кадре. | Недоступно |
| Всего запросов | Общее число запросов, которые система физики вызвала для этого кадра. Это включает запросы типа Physics2D.Raycast и Physics2D.OverlapPoint |
Недоступно |
| Всего Transform Синхронизированных вызовов | Общее число вызовов синхронизации Transform, которые система физики вызвала в этом кадре. | Недоступно |
| Transform Основные синхронизирующие корпуса | Число Rigidbody2D, которые были затронуты синхронизацией Transform, вызванной перепропартингом Transform. | Недоступно |
| Transform Родительские коллайдеры синхронизации | Число Collider2D, которые были затронуты синхронизацией Transform, вызванной перепропартингом Transform. | Недоступно |
| Transform Синхронизаторы | Количество Rigidbody2D, которые были затронуты синхронизацией Transform. | Недоступно |
| Transform Синхронные коллайдеры | Количество Collider2D, которые были затронуты синхронизацией Transform. | Недоступно |
| Триггер Ввод | Число обратных вызовов OnTriggerEnter2D, которые были вызываемы в этом кадре. | Недоступно |
| Выход триггера | Число обратных вызовов OnTriggerExit2D, которые были вызываемы в этом кадре. | Недоступно |
| Триггер Остаться | Число обратных вызовов OnTriggerStay2D, которые были вызываемы в этом кадре. | Недоступно |
Дополнительные сведения о сборе данных физики 2D см. в Справочник по модулю 2D Physics в Profiler.
Счетчики профиля отображения
Доступные счетчики профилирования рендеринга и доступность в релизных (неразработанных) проигрывателях выглядят следующим образом:
| Profiler счетчик | Описание | Доступность в релизных (неразработанных) плеерах |
|---|---|---|
| Количество партий | Общее число партии обработанных Unity за кадр. Это число включает и статические, и динамические пакеты. | Имеющиеся |
| CPU Время основного потока | Время между началом кадра и временем, когда Главный поток завершает работу, которую он выполняет в течение этого кадра. | Доступно, когда включена функция Frame Timing Stats. |
| CPU Время кадра рендеринга потока | Время между началом работы на потоке Render Thread и вызовом Unity метода Present. |
Доступно, когда включена функция Frame Timing Stats. |
| CPU Общее время кадра | Общее время кадра CPU. Unity рассчитывает это как время между концами двух кадров, включая любые накладные расходы или время ожидания между кадрами. | Доступно, когда включена функция Frame Timing Stats. |
| Количество выигрышных вызовов | Общее число вызовов Unity, сделанных в течение фрейма. | Имеющиеся |
| Динамический пакетный подсчет вызовов | Количество вызовов Unity, объединенных в динамические батча. | Недоступно |
| Динамическое количество треугольников | Число треугольников в GameObjects, включенных в динамические партии. | Недоступно |
| Динамическое количество вершин в пакете | Число вершин в GameObjects, включенных в динамические пакеты. | Недоступно |
| Динамическое количество партий | Число динамических пакетов Unity, обработанных в течение кадра. | Недоступно |
| Динамическое время дозирования | Время, затраченное Unity на создание динамических пакетных структур. | Недоступно |
| GPU Время кадра | Временная разница между началом и концом GPU рендеринга одного кадра. | Доступно, когда включена функция Frame Timing Stats. |
| Загрузка буфера индекса в байтах кадра | Количество геометрии, которое CPU загрузил на GPU в байтах. | Имеющиеся |
| Загрузка буфера индекса в количестве кадров | Количество геометрии, которое CPU загрузил в GPU в кадре. | Имеющиеся |
| Количество вызовов инстанционированной пакетной выгрузки | Количество вызовов отрисовки, объединённых Unity в инстансированные пакеты. | Недоступно |
| Количество экземпляров треугольников | Количество треугольников в экземпляре GameObjects. | Недоступно |
| Число вершин в экземплярах пакета | Количество вершин в экземпляре GameObjects. | Недоступно |
| Количество экземпляров партии | Число пакетов Unity, обработанных для отображения с экземпляром GameObjects в течение кадра. | Недоступно |
| Байты рендеринга текстур | Количество памяти, используемой RenderTextures в байтах. | Имеющиеся |
| Количество изменений текстур рендеринга | Количество раз, когда Unity установил один или несколько RenderTextures в качестве целей рендеринга во время кадра. | Имеющиеся |
| Количество текстур рендеринга | Количество RenderTextures Unity, использованных в течение кадра. | Имеющиеся |
| SetPass Количество звонков | Количество раз, когда Unity переключал, какой проход шейдера он использовал для рендеринга GameObjects в течение кадра. | Имеющиеся |
| Число заклинателей тени | Число GameObjects, которые бросают тени в кадре. Если GameObject бросает несколько теней (потому что его освещают несколько источников света), у него есть одна запись на каждую брошенную тень. | Имеющиеся |
| Статическое число вызовов пакетного вывода | Количество вызовов отрисовки, объединённых Unity в статические пакеты. | Недоступно |
| Статическое количество треугольников | Количество треугольников в GameObject, вошедших в статические пакеты. | Недоступно |
| Статическое количество вершин в пакете | Количество вершин в GameObject, вошедших в статические пакеты. | Недоступно |
| Статическое количество партий | Количество статических пакетов, обработанных Unity за кадр. | Недоступно |
| Количество треугольников | Количество triangles Unity, обработанных в течение кадра. | Имеющиеся |
| Использованные буферы Байты | Количество памяти, используемой буферами GPU в байтах. | Имеющиеся |
| Количество использованных буферов | Общее число буферов GPU. Сюда входят вершинные, индексные и вычислительные буферы, а также все внутренние буферы, необходимые для рендеринга. | Имеющиеся |
| Использованные текстуры Байты | Количество памяти, используемой текстурами, в байтах. | Недоступно |
| Использованные текстуры | Число текстуры Unity использованный во время рамки. | Недоступно |
| Загрузка буфера вершин в байтах кадра | Количество геометрии, которое CPU загрузил на GPU в байтах. | Имеющиеся |
| Загрузка вершинного буфера в количестве кадров | Количество геометрии, которое CPU загрузил в GPU в кадре. | Имеющиеся |
| Количество вершин | Количество vertices Unity, обработанных в течение кадра. | Имеющиеся |
| Байты видеопамяти | Количество системной памяти, используемой видео в вашем приложении, в байтах. | Имеющиеся |
| Количество видимых мешей с кожурой | Количество Skinned Mesh Renderers в кадре. | Имеющиеся |
Дополнительные сведения о сборе данных отображения см. в Рендирование Profiler ссылка на модуль.
Счетчики виртуального профилирования текстур
Доступные счётчики профайлера для виртуального текстурирования и их доступность в релизных (не отладочных) плеерах приведены ниже:
| Profiler счетчик | Описание | Доступность в релизных (неразработанных) плеерах |
|---|---|---|
| Атлас | Количество пространств виртуальных текстур или атласов (максимум 64). | Недоступно |
| Максимальный кэш-запрос | Наибольшая потребность в кэше из всех кэшей GPU в выбранном кадре. | Недоступно |
| Максимальный кэш-мип bias | Автоматическое отклонение mipmap применяется ко всем текстурам с одним и тем же форматом текстуры. Если это значение не равно нулю, то кэш недостаточно большой, чтобы вместить все видимые плитки этого формата. Чем выше отклонение mipmap, тем ниже качество текстуры. | Недоступно |
| Отсутствуют данные диска | Оставшиеся данные (в байтах), которые приложение должно было прочитать с диска для выполнения выбранного кадра. | Недоступно |
| Отсутствие потоковых плиток | Количество плиток, которые были видны на экране, но не были в видеопамяти. | Недоступно |
| Читать с диска | Число операций чтения байт диска, которые Unity выполнил в выбранном кадре. | Недоступно |
| Необходимые плитки | Число плиток текстуры, которые были видны на экране. Это плитки, которые шейдеры пытались скомпилировать для рендеринга выбранного кадра. | Недоступно |
| Всего CPU Размер кэша | Количество памяти, которое Unity выделил для хранения плиток текстуры после их загрузки с диска. | Недоступно |
| Всего GPU Размер кэша | Размер всех GPU кэшей, которые модуль Virtual Texturing выделил в выбранном кадре. | Недоступно |
Подробнее о сборе данных виртуального текстурирования см. Справочный модуль виртуального текстурирования.