ID3DXEffect::Begin 方法

启动活动技术。

语法

HRESULT Begin(
  [out] UINT  *pPasses,
  [in]  DWORD Flags
);

参数

pPasses [out]

类型: UINT*

指向返回的值的指针,该值指示呈现当前技术所需的传递数。

Flags [in]

类型: DWORD

确定是否保存和还原由效果修改的状态的 DWORD。 默认值 0 指定 ID3DXEffect::BeginID3DXEffect::End 将保存和还原由效果 (修改的所有状态,包括像素和顶点着色器常量) 。 可以在 效果状态保存和还原标志中看到有效标志。

返回值

类型: HRESULT

如果方法成功,则返回值D3D_OK。 如果方法失败,则返回值可以是以下值之一:D3DERR_INVALIDCALL、D3DXERR_INVALIDDATA。

备注

应用程序通过调用 ID3DXEffect::Begin 在效果系统中设置一种活动技术。 效果系统通过捕获可由状态块中的技术更改的所有管道状态来做出响应。 应用程序通过调用 ID3DXEffect::End 来发出技术结束的信号,该 ID3DXEffect::End 使用状态块还原原始状态。 因此,效果系统负责在技术变为活动状态时保存状态,并在技术结束时还原状态。 如果选择禁用此保存和还原功能,请参阅 D3DXFX_DONOTSAVESAMPLERSTATE

ID3DXEffect::BeginID3DXEffect::End 对中,应用程序使用 ID3DXEffect::BeginPass 设置活动传递,如果激活传递后发生任何状态更改,则使用 ID3DXEffect::CommitChanges ,并使用 ID3DXEffect::EndPass 结束活动传递。

要求

要求
标头
D3DX9Effect.h

D3dx9.lib

另请参阅

ID3DXEffect