Поделиться через


Руководство по программированию для HLSL

Данные входят в графический конвейер в виде потока примитивов и обрабатываются этапами шейдера. Фактические этапы шейдера зависят от версии Direct3D, но, безусловно, включают вершины, пиксель и геометрические этапы. Другие этапы включают шейдеры корпуса и домена для тесселяции и шейдер вычислений. Эти этапы полностью программируются с помощью языка заливки высокого уровня (HLSL).

Шейдеры HLSL можно скомпилировать во время разработки или во время выполнения и установить во время выполнения на соответствующем этапе конвейера. Шейдеры Direct3D 9 можно разрабатывать с помощью модели шейдера 1, модели шейдера 2 и модели шейдера 3; Шейдеры Direct3D 10 можно разрабатывать только на модели шейдера 4. Шейдеры Direct3D 11 можно разрабатывать на модели шейдера 5. Direct3D 11.3 и Direct3D 12 можно разрабатывать на модели шейдера 5.1, а Direct3D 12 также можно разрабатывать на модели шейдера 6.

В этом разделе

Тема Описание
Использование связывания шейдеров Мы покажем, как создать предварительно скомпилированные функции HLSL, упаковать их в библиотеки и связать их с полными шейдерами во время выполнения.
написание шейдеров HLSL в Direct3D 9
использование шейдеров в Direct3D 9
использование шейдеров в Direct3D 10
оптимизации шейдеров HLSL
отладка шейдеров в Visual Studio Последнее средство отладки шейдеров теперь поставляется как компонент в Microsoft Visual Studio с именем Visual Studio Graphics Debugger.
компиляции шейдеров Теперь рассмотрим различные способы компиляции кода и соглашений шейдера для расширений файлов для кода шейдера.
указание целевых объектов компилятора Здесь перечислены целевые объекты для различных профилей, которые функции D3DCompile* и поддержка компилятора HLSL.
Распаковка и упаковка DXGI_FORMAT для In-Place редактирования изображений
использование минимальной точности HLSL Начиная с Windows 8 графические драйверы могут реализовать минимальные показатели точности скалярных типов данных HLSL с помощью любой точности, большей или равной заданной точности битов.
модель шейдера HLSL 5
модель шейдера HLSL 5.1 В этом разделе описываются функции модели шейдера 5.1, которые применяются на практике к D3D12 и D3D11.3. Все оборудование DirectX 12 поддерживает модель шейдера 5.1.
шейдер HLSL 6.0 Описывает встроенные волны операции, добавленные в модель 6.0 шейдера HLSL.
ШЕЙДЕР HLSL 6.4 Описывает встроенные компоненты машинного обучения, добавленные в модель 6.4 шейдера HLSL.