IDirect3DDevice9::CreateVertexShader 方法 (d3d9.h)
建立頂點著色器。
語法
HRESULT CreateVertexShader(
[in] const DWORD *pFunction,
[out, retval] IDirect3DVertexShader9 **ppShader
);
參數
[in] pFunction
類型: const DWORD*
代表頂點著色器的標記數位指標,包括任何內嵌偵錯和符號數據表資訊。
- 使用 D3DXCompileShader 之類的函式,從 HLSL 著色器建立數位。
- 使用 D3DXAssembleShader 之類的函式,從元件語言著色器建立令牌陣列。
- 使用 ID3DXEffectCompiler::CompileShader 之類的函式,從效果建立陣列。
[out, retval] ppShader
類型: IDirect3DVertexShader9**
傳回頂點著色器介面的指標 (請參閱 IDirect3DVertexShader9) 。
傳回值
類型: HRESULT
如果方法成功,傳回值會D3D_OK。 如果方法失敗,傳回值可以是下列其中一項:D3DERR_INVALIDCALL、D3DERR_OUTOFVIDEOMEMORY E_OUTOFMEMORY。
備註
建立裝置時, IDirect3D9::CreateDevice 會使用行為旗標來判斷是否要在硬體或軟體中處理頂點。 有三種可能性:
- 藉由設定 D3DCREATE_HARDWARE_VERTEXPROCESSING,在硬體中處理頂點。
- 藉由設定 D3DCREATE_SOFTWARE_VERTEXPROCESSING,在軟體中處理頂點。
- 設定D3DCREATE_MIXED_VERTEXPROCESSING,以處理硬體或軟體中的頂點。 若要在軟體和硬體處理之間切換混合模式裝置,請使用 IDirect3DDevice9::SetSoftwareVertexProcessing。
規格需求
需求 | 值 |
---|---|
目標平台 | Windows |
標頭 | d3d9.h (包含 D3D9.h) |
程式庫 | D3D9.lib |