支持着色器 3 的其他指令槽

支持像素或顶点着色器版本 3.0 及更高版本的显示设备必须为任一着色器类型至少支持 512 个指令槽。 但是,对于任一着色器类型,此显示设备最多支持 32768 个指令槽。

为了指示设备支持的顶点着色器 3.0 的最大指令槽数,设备的 DirectX 9.0 驱动程序将 D3DCAPS9 结构的 MaxVertexShader30InstructionSlots 成员设置到最大数目。

为了指示设备支持的像素着色器 3.0 的最大指令槽数,设备的 DirectX 9.0 驱动程序将 D3DCAPS9 结构的 MaxPixelShader30InstructionSlots 成员设置到最大数目。

由于像素和顶点 3.0 着色器的最大指令槽数可能不同,因此 DirectX 9.0 驱动程序可以将 MaxVertexShader30InstructionSlotsMaxPixelShader30InstructionSlots 设置为不同的值。 驱动程序可以将最大指令槽数从 512 设置为 32768。 如果驱动程序将 MaxVertexShader30InstructionSlotsMaxPixelShader30InstructionSlots 设置到超出允许范围的值,则驱动程序无法加载。

驱动程序返回 D3DCAPS9 结构以响应 GetDriverInfo2 查询,类似于它返回 D3DCAPS8 结构的方式,如 报告 DirectX 8.0 样式 Direct3D 功能中所述。 支持 GetDriverInfo2 中介绍了对此查询的支持。