IDirect3DDevice9::D rawIndexedPrimitiveUP 方法 (d3d9.h)
使用使用者記憶體指標所指定的數據來呈現指定的幾何基本類型。
語法
HRESULT DrawIndexedPrimitiveUP(
[in] D3DPRIMITIVETYPE PrimitiveType,
[in] UINT MinVertexIndex,
[in] UINT NumVertices,
[in] UINT PrimitiveCount,
[in] const void *pIndexData,
[in] D3DFORMAT IndexDataFormat,
[in] const void *pVertexStreamZeroData,
[in] UINT VertexStreamZeroStride
);
參數
[in] PrimitiveType
類型: D3DPRIMITIVETYPE
D3DPRIMITIVETYPE列舉型別的成員,描述要呈現的基本類型。
[in] MinVertexIndex
類型: UINT
頂點索引下限。 這是以零起始的索引。
[in] NumVertices
類型: UINT
在此呼叫期間使用的頂點數目。 第一個頂點位於索引:MinVertexIndex。
[in] PrimitiveCount
類型: UINT
要呈現的基本類型數目。 允許的基本類型數目上限取決於檢查 D3DCAPS9 結構的 MaxPrimitiveCount 成員, (索引數目是基本計數和基本類型) 的函式。
[in] pIndexData
類型: const void*
索引數據的用戶記憶體指標。
[in] IndexDataFormat
類型: D3DFORMAT
D3DFORMAT列舉型別的成員,描述索引數據的格式。 有效設定為:
[in] pVertexStreamZeroData
類型: const void*
頂點數據的用戶記憶體指標。 頂點數據必須位於數據流 0 中。
[in] VertexStreamZeroStride
類型: UINT
每個頂點的數據位元組數目。 此值可能不是 0。
傳回值
類型: HRESULT
如果方法成功,傳回值會D3D_OK。 如果方法失敗,則傳回值可以是下列各項:D3DERR_INVALIDCALL。
備註
這個方法適用於無法將其頂點數據儲存在頂點緩衝區的應用程式。 這個方法只支援單一頂點數據流,必須宣告為數據流 0。
遵循任何 IDirect3DDevice9::D rawIndexedPrimitiveUP 呼叫之後, IDirect3DDevice9::GetStreamSource 所參考的數據流 0 設定會設定為 NULL。 此外, IDirect3DDevice9::SetIndices 的 索引緩衝區設定會設定為 NULL。
傳遞至 IDirect3DDevice9::D rawIndexedPrimitiveUP 的頂點數據不需要在呼叫之後保存。 Direct3D 會先完成該數據的存取權,再從呼叫傳回。
將舊版應用程式轉換為 Direct3D 9 時,您必須在進行任何 Draw 呼叫之前,新增 IDirect3DDevice9::SetFVF 的呼叫,才能使用固定函數管線或 IDirect3DDevice9::SetVertexDeclaration 來使用頂點著色器。
規格需求
需求 | 值 |
---|---|
目標平台 | Windows |
標頭 | d3d9.h (包含 D3D9.h) |
程式庫 | D3D9.lib |