Freigeben über


Effektsystemschnittstellen (Direct3D 11)

Das Effektsystem definiert mehrere Schnittstellen zum Verwalten des Effektzustands. Es gibt zwei Arten von Schnittstellen: diejenigen, die von der Runtime zum Rendern eines Effekts verwendet werden, und Reflektionsschnittstellen zum Abrufen und Festlegen von Effektvariablen.

Effektlaufzeitschnittstellen

Verwenden Sie Laufzeitschnittstellen, um einen Effekt zu rendern.

Laufzeitschnittstellen Beschreibung
ID3DX11Effect Sammlung einer oder mehrerer Gruppen und Techniken zum Rendern.
ID3DX11EffectPass Eine Auflistung von Zustandszuweisungen.
ID3DX11EffectTechnique Eine Sammlung von mindestens einem Durchläufen.
ID3DX11EffectGroup Eine Sammlung einer oder mehrerer Techniken.

 

Effektreflektionsschnittstellen

Reflektion wird im Effektsystem implementiert, um den Effektzustand des Lesens (und Schreibens) zu unterstützen. Es gibt mehrere Möglichkeiten, auf Effektvariablen zuzugreifen.

Festlegen von Effektstatusgruppen

Verwenden Sie diese Schnittstellen, um eine Gruppe von Status abzurufen und festzulegen.

Reflektionsschnittstellen Beschreibung
ID3DX11EffectBlendVariable Abrufen und Festlegen des Mischzustands.
ID3DX11EffectDepthStencilVariable Rufen Sie den Tiefenschablonenzustand ab, und legen Sie sie fest.
ID3DX11EffectRasterizerVariable Rufen Sie den Rasterungsstatus ab, und legen Sie den Status fest.
ID3DX11EffectSamplerVariable Rufen Sie den Samplerstatus ab, und legen Sie den Status fest.

 

Festlegen von Effektressourcen

Verwenden Sie diese Schnittstellen, um Ressourcen abzurufen und festzulegen.

Reflektionsschnittstellen Beschreibung
ID3DX11EffectConstantBuffer Greifen Sie auf Daten in einem Texturpuffer oder konstanten Puffer zu.
ID3DX11EffectDepthStencilViewVariable Greifen Sie auf Daten in einer Tiefenschablonenressource zu.
ID3DX11EffectRenderTargetViewVariable Greifen Sie auf Daten in einem Renderziel zu.
ID3DX11EffectShaderResourceVariable Zugreifen auf Daten in einer Shaderressource.
ID3DX11EffectUnorderedAccessViewVariable Greifen Sie in einer ungeordneten Zugriffsansicht auf Daten zu.

 

Festlegen anderer Effektvariablen

Verwenden Sie diese Schnittstellen, um den Zustand nach dem Variablentyp abzurufen und festzulegen.

Reflektionsschnittstellen Beschreibung
ID3DX11EffectClassInstanceVariable Rufen Sie eine Klasse instance ab.
ID3DX11EffectInterfaceVariable Rufen Sie eine Schnittstelle ab, und legen Sie sie fest.
ID3DX11EffectMatrixVariable Rufen Sie eine Matrix ab, und legen Sie sie fest.
ID3DX11EffectScalarVariable Rufen Sie einen Skalar ab, und legen Sie sie fest.
ID3DX11EffectShaderVariable Rufen Sie eine Shadervariable ab.
ID3DX11EffectStringVariable Rufen Sie eine Zeichenfolge ab, und legen Sie sie fest.
ID3DX11EffectType Rufen Sie einen Variablentyp ab.
ID3DX11EffectVectorVariable Rufen Sie einen Vektor ab, und legen Sie sie fest.

 

Alle Reflektionsschnittstellen leiten sich von ID3DX11EffectVariable ab.

Effekte (Direct3D 11)

Programmieranleitung für Direct3D 11