IDirect3DDevice9::CreateVertexShader 方法 (d3d9helper.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 |
标头 | d3d9helper.h (包括 D3D9.h) |
Library | D3D9.lib |