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 中调试着色器 调试着色器的最新工具现在作为 Microsoft Visual Studio 中的一项功能提供,Visual Studio图形调试器。
编译着色器 现在,让我们看看为着色器代码编译着色器代码和文件扩展名约定的各种方法。
指定编译器目标 此处列出了 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 描述添加到 HLSL 着色器模型 6.0 的波形运算内部函数。
HLSL 着色器模型 6.4 介绍添加到 HLSL 着色器模型 6.4 的机器学习内部函数。