D3DHAL_DP2SETSTREAMSOURCE结构(d3dhal.h)

仅 DirectX 8.0 及更高版本。

D3DHAL_DP2SETSTREAMSOURCE结构用于将顶点流源绑定到 D3dDrawPrimitives2的顶点缓冲区。

语法

typedef struct _D3DHAL_DP2SETSTREAMSOURCE {
  DWORD dwStream;
  DWORD dwVBHandle;
  DWORD dwStride;
} D3DHAL_DP2SETSTREAMSOURCE;

成员

dwStream

指定要绑定的流。 它的值介于零和驱动程序指定的最大流数之间。

dwVBHandle

指定顶点缓冲区句柄。 顶点缓冲区句柄为零是合法的,在这种情况不再绑定到顶点缓冲区。

dwStride

指定顶点大小(以字节为单位)。

言论

驱动程序通过新的 DP2 令牌(D3DDP2OP_SETSTREAMSOURCE)通知将顶点缓冲区绑定到特定流。

调试运行时验证 dwStream 是否在法定范围内,但零售版本不存在,因此验证必须存在于驱动程序中。 DirectX 8.0 不定义驱动程序或硬件的行为,在这种情况下,给定的流索引大于硬件支持的最大流(如 maxStreams 在 D3DCAPS8 中报告),否则要求驱动程序和硬件组合在此示例中没有故障或挂起,并且 还原正确状态时,驱动程序和硬件组合应继续正常运行。 显示驱动程序的调试版本应在调试输出流中显示消息,指示何时检测到此问题。

运行时不会验证当前顶点着色器访问的流是否为非 NULL。 驱动程序编写器负责确保在出现此错误时驱动程序/硬件不会崩溃。 显示驱动程序的调试版本应在调试输出流中显示消息,以指示何时检测到此问题。

只有单个流源由 D3DHAL_DP2COMMAND 结构设置。 也就是说,D3DHAL_DP2COMMAND的 wStateCount 字段始终是D3DDP2OP_SETSTREAMSOURCE bCommand 字段。

要求

要求 价值
标头 d3dhal.h (包括 D3dhal.h)

另请参阅

D3DDP2OP_SETSTREAMSOURCE

D3DHAL_DP2COMMAND

D3DHAL_DP2SETSTREAMSOURCEUM

D3dDrawPrimitives2