PIX – это средство настройки и отладки производительности от Microsoft для разработчиков Windows. Он предлагает ряд режимов для анализа производительности приложения и включает возможность захвата кадров проектов DirectX из приложения для отладки.
Используйте PIX для исследования проблем в автономной 64-разрядной версии Windows (x86_64) или универсальной платформе Windowsфункция IAP, которая поддерживает В симуляторе покупки приложений, который позволяет тестировать потоки покупок IAP на устройствах перед публикацией приложения. Дополнительная информация
См. в приложениях Словарь.
Чтобы установить PIX, загрузите и запустите программу установки Microsoft PIX и следуйте инструкциям. .
Для получения дополнительной информации о PIX см. введение в PIX и Документация по PIX.
Отладка шейдеров DirectX с помощью PIX
Для захвата кадров следует использовать встроенную версию приложения Unity, а не версию, работающую в редакторе Unity. Это связано с тем, что вам необходимо запустить целевое приложение из PIX для захвата кадров графического процессора.
Использование сборки для разработки добавляет в PIX дополнительную информацию, что упрощает навигацию по сценеСцена содержит среды и меню вашего игра. Думайте о каждом уникальном файле сцены как об уникальном уровне. В каждой сцене вы размещаете свое окружение, препятствия и декорации, по сути проектируя и создавая свою игру по частям. Подробнее
Просмотрите в Словарь захватить проще.
Создать проект с шейдером с поддержкой отладки
Для отладки шейдера с исходным кодом в PIX необходимо вставить в код шейдера следующую прагму: #pragma enable_d3d11_debug_symbols
Пример
В следующем пошаговом руководстве используется базовый пример для демонстрации всего процесса.
Создайте базовый проект:
Создайте новый проект Unity (см. документацию Hub по Проекты) .
В верхнем меню выберите РесурсыЛюбые медиафайлы или данные, которые можно использовать в вашей игре или проекте. Ресурс может быть получен из файла, созданного вне Unity, например, из 3D-модели, аудиофайла или изображения. Вы также можете создавать некоторые типы ресурсов в Unity, например контроллер аниматора, аудиомикшер или текстуру рендеринга. Подробнее
См. в Словарь > Создать > ШейдерПрограмма, работающая на графическом процессоре. Подробнее
См. в Словарь > Стандартный шейдер поверхности. Это создаст новый файл шейдера в вашем ПроектеВ Unity вы используете проект для проектирования и разработки игры. В проекте хранятся все файлы, связанные с игрой, такие как ресурсы и файлы сцен. Подробнее
См. в папке Словарь.Выберите файл шейдера и в Инспектореокне Unity, в котором отображается информация о выбранном в данный момент GameObject, настройки актива или проекта, что позволяет просматривать и редактировать значения. Дополнительная информация
В окне Словарь нажмите Открыть. Это откроет файл шейдера в вашем редакторе сценариев. Вставьте#pragma enable_d3d11_debug_symbols
в код шейдера под другими строками#pragma
.Создайте новый материал (меню: Ресурсы > Создать > МатериалРесурс, определяющий способ визуализации поверхности. Подробнее
См. в Словарь).В окне инспектора материалов выберите раскрывающийся список Шейдер, перейдите к Пользовательский и выберите только что созданный шейдер.
Создайте 3D-куб GameObject (меню: GameObjectОсновной объект в сценах Unity, который может представлять персонажей, реквизит, декорации, камеры, путевые точки и т. д. Функциональность GameObject определяется прикрепленными к нему компонентами. Подробнее
См. в Словарь > 3D-объектИгровой 3D-объект, такой как куб, ландшафт или тряпичная кукла. Подробнее
См. в Словарь > Куб). р>Назначьте новый материал вашему новому игровому объекту. Для этого перетащите Материал из окна Проект в 3D-куб.
Захват кадра из автономного приложения Windows:
-
Перейдите в раздел Файл > Настройки сборки и в разделе Платформа выберите Автономный ПК, Mac и Linux. Установите Целевая платформа на Windows, установите для Архитектуры значение x86_64 и нажмите Сборка для разработкиСборка для разработки включает символы отладки и включает профилировщик. Подробнее
Посмотреть в флажке Словарь. Нажмите СборкаПроцесс компиляции вашего проекта в формат, который готов к работе на определенной платформе или платформы. Подробнее
См. в Словаре.Запустите PIX.
Нажмите Главная, затем Подключиться.
Выберите Компьютер localhost , чтобы использовать свой ПК для захвата, и нажмите подключиться.
В поле Выбрать целевой процесс выберите вкладку Запустить Win32 и с помощью кнопки Обзор выберите исполняемый файл приложения. . Обратите внимание, что здесь «Win32» означает приложение, отличное от UWP; ваш файл приложения должен быть 64-битным двоичным файлом.
-
Включите Запуск для GPU Capture, затем используйте кнопку Запуск, чтобы запустить приложение.
-
Используйте приложение как обычно, пока не будете готовы сделать кадр. Чтобы сделать кадр, нажмите Print Screen на клавиатуре или щелкните камерукомпонент, который создает изображение определенной точки обзора в вашей сцене. Вывод либо рисуется на экране, либо фиксируется в виде текстуры. Подробнее
См. значок Словарь на панели захвата графического процессора. Миниатюра снимка появится на панели. Чтобы открыть снимок, нажмите на миниатюру. -
Чтобы начать анализ снимка, щелкните выделенный текст или маленький значок Воспроизвести в строке меню.
-
Выберите вкладку Конвейер и используйте окно __ События__, чтобы перейти к интересующему вас вызову отрисовки.
В нижней половине вкладки Конвейер выберите цель рендеринга в списке OM (Объединение выходных данных), чтобы просмотреть выходные данные вызова отрисовки. Выберите пиксельнаименьшую единицу компьютерного изображения. Размер пикселя зависит от разрешения вашего экрана. Пиксельное освещение рассчитывается для каждого пикселя экрана. Подробнее
См. в Словаре объект, который нужно отладить. Обратите внимание, что вы можете щелкнуть пиксель правой кнопкой мыши, чтобы просмотреть историю вызовов отрисовки, чтобы найти интересующие вас вызовы отрисовки.-
Выберите Отладить пиксель на панели Сведения о пикселях.
-
На панели отладки используйте параметры шейдера, чтобы выбрать этап шейдера для отладки.
-
Используйте панель инструментовряд кнопок и основных элементов управления в верхней части редактора Unity, который позволяет взаимодействовать с Редактировать различными способами (например, масштабирование, перевод). Подробнее
См. Словарь или сочетания клавиш для пошагового выполнения кода.
Дополнительную информацию об отладке шейдеров с помощью PIX см. в серии видеороликов Microsoft PIX в Windows a>, особенно Часть 5 — Вкладка "Отладка".
Дополнительную информацию о захвате графического процессора в PIX см. в документации Microsoft по захватам графического процессора.