Справочник по стандартным заметкам и семантике DirectX

Стандартные заметки и семантика (DXSAS) предоставляют стандартный метод использования шейдеров, который позволяет использовать шейдеры с инструментами, приложениями и игровыми движками. DXSAS определяет набор семантики и примечаний, присоединенных к значениям ведущего приложения и параметрам эффектов для совместного использования эффектов. Чтобы эти заметки и семантика были полезны, они должны быть реализованы как в ведущем приложении, так и в файле эффекта. В этом документе описывается стандарт DXSAS, который использует возможности Платформы эффектов DirectX для предоставления ведущим приложениям и средствам программного доступа к эффектам DirectX (FX-файлам), а также для проектирования взаимодействия с пользовательским интерфейсом.

Основные сведения

Стандартные заметки и семантика предназначены для привязки эффектов и параметров X-файла к значениям ведущего приложения. Платформа эффектов D3DX (или эффекты) инкапсулирует состояние отрисовки. Инкапсулируя состояние отрисовки (включая вершину, текстуру и состояние обработки пикселей) в эффекте, можно создать библиотеку эффектов, охватывающих широкий спектр вариантов отрисовки. Сюда могут входить такие параметры, как отрисовка на разных типах оборудования или отрисовка с однократным или многопространивным наложением. Дополнительные сведения о платформе эффектов см. в справочнике по эффектам. DXSAS основан на этой платформе, что обеспечивает более согласованное взаимодействие с разработчиками. После того как настройка отрисовки инкапсулируется в эффекте, стандарт DXSAS позволяет разработчику эффектов предоставлять намерение параметров эффекта с помощью заметок. Затем эти заметки могут быть прочитаны любым ведущим приложением или инструментом (а не только тем, который был разработан для использования эффекта), которые соответствуют стандарту, поймут, как использовать эффект таким образом, как он был разработан.

Стандартизация набора семантики эффектов и заметок, которые поддерживаются приложениями, позволяет авторам эффектов создавать эффекты, которые можно использовать в нескольких проектах, и тем самым содействовать более широкому сообществу пользователей эффектов. Стандарт DXSAS делает файлы читаемыми разработчиками, возможностью обмена между инструментами и позволяет разработчикам использовать сторонние инструменты для создания эффектов для конвейера.

В этом документе описывается стандарт DXSAS, который использует заметки для выражения намерения параметров эффекта, а также определяет коллекцию значений ведущих приложений, которые хост-приложения соглашаются сделать доступными для эффекта.

Эффекты разработки со стандартными заметками и семантикой

Как видно из следующей схемы, стандарт DXSAS требует заметок в файле эффектов, а также ведущее приложение, которое следует рекомендациям, описанным здесь, для работы с файлом.

Схема стандарта dxsas для ведущих приложений и файлов эффектов

Ведущее приложение должно реализовывать логику пользовательского интерфейса и среду узла. Чтобы реализовать эффекты, совместимые с DXSAS, ознакомьтесь со следующими разделами:

  • Глобальный параметр определяет сведения, относящиеся к эффекту, например версию или автора эффекта.
  • Привязка данных определяет коллекцию параметров (а также их тип и структуру), которые могут использоваться эффектом, который может быть задан ведущим приложением, предоставляемым эффектами.
  • Чтобы связать элемент управления пользовательского интерфейса с параметром эффекта, используйте заметку пользовательского интерфейса. К этим заметкам относятся SasUiMax, SasUiMin, SasUiSteps, SasUiStepsPower и SasUiStride.
  • Чтобы инициализировать параметр эффекта данными, содержащимися во внешнем файле, используйте заметку инициализации параметров.
  • Когда данные передаются между ведущим приложением и эффектом (или наоборот), приведение и преобразование будут выполняться, если типы не полностью совпадают. В этом разделе указывается, как записываются данные, если исходный и целевой типы отличаются. Кроме того, используйте ParameterValueModifiers , чтобы изменить способ интерпретации ведущим приложением данных, прочитанных из параметра effect. К этим заметкам относятся SasNormalize и SasUnits.

Чувствительность к регистру

Все идентификаторы, семантика и значения заметок не учитывают регистр. Имена заметок (не значения) чувствительны к регистру. Имена заметок распознаются системой эффектов D3DX, поэтому также используются имена заметок SAS.

Справочник по эффектам