IDirect3DDevice9::D rawPrimitiveUP 方法 (d3d9.h)
将用户内存指针指定的数据呈现为指定类型的几何基元序列。
语法
HRESULT DrawPrimitiveUP(
[in] D3DPRIMITIVETYPE PrimitiveType,
[in] UINT PrimitiveCount,
[in] const void *pVertexStreamZeroData,
[in] UINT VertexStreamZeroStride
);
参数
[in] PrimitiveType
类型: D3DPRIMITIVETYPE
D3DPRIMITIVETYPE 枚举类型的成员,描述要呈现的基元的类型。
[in] PrimitiveCount
类型: UINT
要呈现的基元数。 允许的最大基元数通过检查 D3DCAPS9 结构的 MaxPrimitiveCount 成员来确定。
[in] pVertexStreamZeroData
类型: const void*
指向顶点数据的用户内存指针。
[in] VertexStreamZeroStride
类型: UINT
每个顶点的数据字节数。 此值不能为 0。
返回值
类型: HRESULT
如果方法成功,则返回值D3D_OK。 如果 方法失败,则返回值可以为:D3DERR_INVALIDCALL。
备注
此方法适用于无法将其顶点数据存储在顶点缓冲区中的应用程序。 此方法仅支持单个顶点流。 此调用的效果是为顶点流 0 使用提供的顶点数据指针和步幅。 如果当前顶点着色器的声明引用流 0 以外的顶点流,则无效。
在任何 IDirect3DDevice9::D rawPrimitiveUP 调用之后, IDirect3DDevice9::GetStreamSource 引用的流 0 设置将设置为 NULL。
传递到 IDirect3DDevice9::D rawPrimitiveUP 的顶点数据不需要在调用后保留。 Direct3D 在从调用返回之前完成对该数据的访问权限。
将旧应用程序转换为 Direct3D 9 时,必须添加对 IDirect3DDevice9::SetFVF 的调用以使用固定函数管道,或 添加对 IDirect3DDevice9::SetVertexDeclaration 的调用,以在进行任何 Draw 调用之前使用顶点着色器。
要求
目标平台 | Windows |
标头 | d3d9.h (包括 D3D9.h) |
Library | D3D9.lib |