Freigeben über


ID3DXEffect::Begin-Methode

Startet eine aktive Technik.

Syntax

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

Parameter

pPasses [out]

Typ: UINT*

Zeiger auf einen zurückgegebenen Wert, der die Anzahl von Durchläufen angibt, die zum Rendern der aktuellen Technik erforderlich sind.

Flaggen [in]

Typ: DWORD

DWORD, das bestimmt, ob der durch einen Effekt geänderte Zustand gespeichert und wiederhergestellt wird. Der Standardwert 0 gibt an, dass ID3DXEffect::Begin und ID3DXEffect::End alle durch den Effekt geänderten Status (einschließlich Pixel- und Vertexshaderkonstanten) speichern und wiederherstellen. Gültige Flags finden Sie unter Save and Restore Flags für den Effektzustand.

Rückgabewert

Typ: HRESULT

Wenn die Methode erfolgreich ist, wird der Rückgabewert D3D_OK. Wenn die Methode fehlschlägt, kann der Rückgabewert einer der folgenden sein: D3DERR_INVALIDCALL, D3DXERR_INVALIDDATA.

Bemerkungen

Eine Anwendung legt eine aktive Technik im Effektsystem fest, indem ID3DXEffect::Begin aufgerufen wird. Das Effektsystem antwortet, indem es den gesamten Pipelinestatus erfasst, der von der Technik in einem Zustandsblock geändert werden kann. Eine Anwendung signalisiert das Ende einer Technik durch Aufrufen von ID3DXEffect::End, das den Zustandsblock verwendet, um den ursprünglichen Zustand wiederherzustellen. Das Effektsystem kümmert sich daher um das Speichern des Zustands, wenn eine Technik aktiv wird, und für die Wiederherstellung des Zustands, wenn eine Technik endet. Wenn Sie diese Funktion zum Speichern und Wiederherstellen deaktivieren möchten, lesen Sie D3DXFX_DONOTSAVESAMPLERSTATE.

Innerhalb des Id3DXEffect::Begin - und ID3DXEffect::End-Paars verwendet eine Anwendung ID3DXEffect::BeginPass , um den aktiven Pass festzulegen, ID3DXEffect::CommitChanges , wenn zustandsänderungen nach dem Aktivieren des Durchlaufs aufgetreten sind, und ID3DXEffect::EndPass , um den aktiven Durchlauf zu beenden.

Anforderungen

Anforderung Wert
Header
D3DX9Effect.h
Bibliothek
D3dx9.lib

Siehe auch

ID3DXEffect