Интерфейсы шейдеров (графика Direct3D 10)
В этом разделе содержатся сведения о следующих интерфейсах шейдеров:
Каждый из этих интерфейсов шейдеров управляет скомпилированным шейдером. Интерфейс создается при компиляции шейдера, а затем передается различным API, которым требуется доступ к скомпилированному шейдеру; например, при привязке шейдера к этапу конвейера или получении подписи шейдера.
Интерфейсы Pipeline-Stage | Описание |
---|---|
Интерфейс ID3D10GeometryShader | Геометрический шейдер реализует примитивную обработку на этапе геометрического шейдера. |
Интерфейс ID3D10PixelShader | Пиксельный шейдер реализует каждый пиксельную обработку на этапе пиксельного шейдера. |
Интерфейс ID3D10VertexShader | Вершинный шейдер реализует обработку каждой вершины на этапе вершинного шейдера. |
Интерфейсы отражения шейдера позволяют приложению проверять содержимое шейдера во время разработки или разработки. Отражение шейдера не полезно для задания переменных во время выполнения, так как оно является зеркало данных шейдера и поэтому не поддерживает методы для задания данных.
Интерфейсы Shader-Reflection | Описание |
---|---|
Интерфейс ID3D10ShaderReflection | COM-интерфейс для чтения сведений из скомпилированного шейдера во время разработки. |
Интерфейс ID3D10ShaderReflectionConstantBuffer | Вспомогательный интерфейс для получения интерфейса буфера констант отражения шейдера. |
Интерфейс ID3D10ShaderReflectionType | Вспомогательный интерфейс для получения интерфейса типа шейдер-отражения. |
Интерфейс ID3D10ShaderReflectionVariable | Вспомогательный интерфейс для получения интерфейса шейдер-отражения-переменной. |
Интерфейс ID3D10ShaderResourceView | Интерфейс отражения шейдера для чтения информации из представления шейдер-ресурса. |
API отражения шейдера реализуют один интерфейс отражения COM-шейдера (ID3D10ShaderReflection Interface) и несколько вспомогательных интерфейсов, отличных от COM (остальные интерфейсы). Интерфейс ID3D10ShaderReflection создается при создании объекта отражения шейдера. Он соответствует стандартным правилам COM; Создание интерфейса увеличивает число ссылок, и интерфейс должен быть освобожден, когда он больше не нужен. Остальные интерфейсы отражения шейдера являются вспомогательными интерфейсами, которые не наследуются от IUnknown. Это означает, что они не изменяют количество ссылок при создании и не должны быть уничтожены после завершения работы с ними.
Связанные темы