IDirect3DDevice9::GetStreamSource 方法 (d3d9helper.h)

检索绑定到指定数据流的顶点缓冲区。

语法

HRESULT GetStreamSource(
  UINT                   StreamNumber,
  IDirect3DVertexBuffer9 **ppStreamData,
  UINT                   *OffsetInBytes,
  UINT                   *pStride
);

参数

StreamNumber

类型:[in] UINT

指定数据流,范围从 0 到最大流数减 1。

ppStreamData

类型:[in, out] IDirect3DVertexBuffer9**

指向 IDirect3DVertexBuffer9 接口的指针的地址,表示绑定到指定数据流的返回顶点缓冲区。

OffsetInBytes

类型:[out] UINT*

包含从流开头到顶点数据开头的偏移量的指针。 偏移量以字节为单位。 请参阅“备注”。

pStride

类型:[out] UINT*

指向组件返回步幅(以字节为单位)的指针。 请参阅“备注”。

返回值

类型: HRESULT

如果方法成功,则返回值D3D_OK。 如果 方法失败,则可以D3DERR_INVALIDCALL返回值。

注解

流定义为组件数据的统一数组,其中每个组件由一个或多个表示单个实体的元素组成,例如位置、法线、颜色等。

使用 FVF 顶点着色器时,顶点流的步幅必须与从 FVF 计算的顶点大小匹配。 使用声明时,步幅应大于或等于从声明计算的流大小。

调用此方法会增加 IDirect3DVertexBuffer9 接口上的内部引用计数。 使用此 IDirect3DVertexBuffer9 接口时调用 IUnknown::Release 失败会导致内存泄漏。

要求

要求
目标平台 Windows
标头 d3d9helper.h (包括 D3D9.h)
Library D3D9.lib

另请参阅

IDirect3DDevice9

IDirect3DDevice9::DrawIndexedPrimitive

IDirect3DDevice9::DrawIndexedPrimitiveUP

IDirect3DDevice9::DrawPrimitive

IDirect3DDevice9::DrawPrimitiveUP

IDirect3DDevice9::SetStreamSource

顶点缓冲区 (Direct3D 9)