Mehrstufige TexturvermischungMultipass texture blending

Direct3D-Apps können durch die Anwendung verschiedener Texturen auf eine Primitive im Laufe von mehreren Berechnungs- und Ausgabedurchläufen zahlreiche Spezialeffekte erzielen.Direct3D applications can achieve numerous special effects by applying various textures to a primitive over the course of multiple rendering passes. Der allgemeine Begriff dafür ist Mehrstufige Texturmischung.The common term for this is multipass texture blending. Eine typische Anwendung für die mehrstufige Texturvermischung liegt in der Nachbildung der Effekte von komplexen Beleuchtungs- und Verschattungsmodellen durch die Anwendung mehrerer Farben aus mehreren unterschiedlichen Texturen.A typical use for multipass texture blending is to emulate the effects of complex lighting and shading models by applying multiple colors from several different textures. Eine solche Anwendung heißt Lichtzuordnung.One such application is called light mapping. Siehe Lichtzuordnung mit Texturen.See Light mapping with textures.

Beachten Sie    einige Geräte sind mehrere Strukturen, primitive Typen in einem einzelnen Durchlauf anwenden kann.Note   Some devices are capable of applying multiple textures to primitives in a single pass. Siehe Texturvermischung.See Texture blending.

 

Wenn die Hardware des Benutzers die Vermischung mehrerer Texturen nicht unterstützt, kann Ihre Anwendung die mehrstufige Texturvermischung verwenden, um die gleichen visuellen Effekte zu erzielen.If the user's hardware does not support multiple texture blending, your application can use multipass texture blending to achieve the same visual effects. Die Anwendung kann jedoch nicht die Bildwechselfrequenzen erhalten, die bei Verwendung der Vermischung mehrerer Texturen möglich sind.However, the application cannot sustain the frame rates that are possible when using multiple texture blending.

Durchführen der mehrstufigen Texturvermischung in einer C/C++-Anwendung:To perform multipass texture blending in a C/C++ application:

  1. Setzen Sie eine Textur in Texturphase 0.Set a texture in texture stage 0.
  2. Wählen Sie die gewünschte Farb- und Alphavermischungsargumente und -abläufe.Select the desired color and alpha blending arguments and operations. Die Standardeinstellungen eignen sich hinlänglich für die mehrstufige Texturvermischung.The default settings are well-suited for multipass texture blending.
  3. Berechnen Sie die entsprechenden 3D-Objekte in der Szene und geben Sie diese aus.Render the appropriate objects in the scene.
  4. Setzen Sie die nächste Textur in Texturphase 0.Set the next texture in texture stage 0.
  5. Setzen Sie die Berechnungs- und Ausgabezustände, um die Ursprungs- und Zielvermischungsfaktoren nach Bedarf anzupassen.Set the render states to adjust the source and destination blending factors as needed. Das System vermischt die neuen Texturen mit den vorhandenen Pixeln in der Ziel-Ausgeben-Oberfläche gemäß dieser Parameter.The system blends the new textures with the existing pixels in the render-target surface according to these parameters.
  6. Wiederholen Sie die Schritte 3, 4 und 5 mit so vielen Texturen wie gewünscht.Repeat Steps 3, 4, and 5 with as many textures as needed.

Verwandte ThemenRelated topics

Textur blendingTexture blending