着色器模型 4

着色器模型 4 是 着色器模型 3 中功能的超集,但着色器模型 4 不支持着色器模型 1 中的功能。 它使用通用着色器核心进行设计,它为所有可编程着色器提供一组通用功能,这些着色器仅使用 HLSL 进行可编程。

特性 功能
指令集 HLSL 函数
注册集 注册集可通过常量缓冲区和纹理缓冲区中的成员访问,这些成员使用 HLSL 语义进行组件打包等操作。
顶点着色器最大值 无限制
像素着色器最大值 无限制
添加了新的着色器配置文件 gs_4_0、ps_4_0、vs_4_0、gs_4_1*、ps_4_1*、gs_4_1*
添加了新的Effect-Framework配置文件 fx_4_0,fx_4_1*

 

* - Direct3D 10.1 或更高版本支持gs_4_1、ps_4_1、vs_4_1和fx_4_1。

着色器模型 4 支持新的管道阶段(几何着色器阶段),可用于创建或修改现有几何图形。 它还包括两个新对象类型:一个流输出对象,用于将数据流式传输到几何阶段,以及实现纹理采样函数的模板化纹理对象。

着色器模型 4 支持打包规则,这些规则决定了在存储数据时可以排列得有多紧密。 这些规则在常量变量的打包规则中介绍

着色器模型 4 程序集部分介绍着色器模型 4 和着色器模型 4.1 支持的程序集说明。

着色器模型与着色器配置文件