共用方式為


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 函式、將它們封裝成連結庫,並在運行時間將它們連結至完整的著色器。
在 Direct3D 9 中撰寫 HLSL 著色器
在 Direct3D 9 中使用著色器
在 Direct3D 10 中使用著色器
優化 HLSL 著色器
在 Visual Studio 偵錯著色器 偵錯著色器的最新工具現在隨附於Visual Studio Microsoft,稱為Visual Studio圖形調試程式的功能。
編譯著色器 現在讓我們看看編譯著色器程式代碼的各種方式,以及著色器程式代碼之擴展名的慣例。
指定編譯程式目標 我們在這裡列出 D3DCompile* 函式和 HLSL 編譯程式支援的各種配置檔的目標。
In-Place 影像編輯 解壓縮和封裝DXGI_FORMAT
使用 HLSL 最小精確度 從 Windows 8 開始,圖形驅動程式可以使用大於或等於指定位精確度的任何有效位數,實作最小精確度 HLSL 純量數據類型
HLSL 著色器模型 5
HLSL 著色器模型 5.1 本節說明著色器模型 5.1 在實務上套用至 D3D12 和 D3D11.3 的功能。 所有 DirectX 12 硬體都支援著色器模型 5.1。
HLSL 著色器模型 6.0 描述新增至 HLSL 著色器模型 6.0 的波浪作業內部函數。
HLSL 著色器模型 6.4 描述新增至 HLSL 著色器模型 6.4 的機器學習內部函數。