Панель шейдеров

Панель «Шейдеры» позволяет просматривать отдельные шейдеры, используемые в трассировке.

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

Чтобы увидеть конкретный шейдер, привязанный к определенному этапу конвейера, просмотрите этот этап в представлении «Конвейер» .

Панель шейдеров
Рисунок 1. Панель шейдеров

Выберите код шейдера

Вы можете выбрать либо SPIR-V , либо, если возможно, GLSL . Примечание:

  • Если код SPIR-V содержит исходный код GLSL в инструкции OpSource, на вкладке GLSL просто отображается тот же код. В противном случае AGI пытается декомпилировать SPIR-V в GLSL с помощью SPIRV-Cross.
  • Если при декомпиляции возникает ошибка, возможность показать исходный код GLSL недоступна.

Статический анализ

AGI предоставляет статистику статического анализа шейдера SPIR-V. Вот поддерживаемая статистика:

Статистика Описание
Инструкции АЛУ Количество инструкций в шейдере, использующем ALU.
Инструкции по текстурам Количество выборок текстур в шейдере.
Инструкции филиала Количество инструкций ветвления в шейдере.
Пиковое временное регистровое давление Наибольшее количество одновременно действующих временных регистров. Время жизни временного значения начинается с момента его определения и заканчивается при его последнем использовании в шейдере. Статистика добавляет p количество регистров, которые использует каждое живое значение (например, 4D число с плавающей запятой будет состоять из 4 регистров).