IDirect3DDevice9::D rawIndexedPrimitiveUP 方法 (d3d9helper.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
在此呼叫期間使用的頂點數目。 第一個頂點位於 index: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 時,您必須先新增 IDirect3DDevice9::SetFVF 的呼叫,才能使用固定函數管線,或 IDirect3DDevice9::SetVertexDeclaration 在進行任何 Draw 呼叫之前使用頂點著色器。
規格需求
需求 | 值 |
---|---|
目標平台 | Windows |
標頭 | d3d9helper.h (包含 D3D9.h) |
程式庫 | D3D9.lib |