Turbulenzeffekt
Verwenden Sie den Turbulenzeffekt, um eine Bitmap basierend auf der Perlin-Rauschfunktion zu generieren.
Der Turbulenzeffekt hat kein Eingabebild.
Die CLSID für diesen Effekt ist CLSID_D2D1Turbulence.
Beispielbild
Der Turbulenzeffekt berechnet die Summe einer oder mehrerer Achtecks der Perlin-Rauschfunktion. Perlin-Rauschen ist eine pseudo-zufällige Funktion, deren Wert von der Häufigkeit, Position und dem Ausgangswert abhängt. Der Effekt generiert die RGBA-Werte mithilfe einer dieser Formeln.
Wenn Sie den D2D1_TURBULENCE_NOISE_FRACTAL_SUM Rauschmodus auswählen, verwendet der Effekt diese Formel.
Wenn Sie den D2D1_TURBULENCE_NOISE_TURBULENCE Rauschmodus auswählen, verwendet der Effekt diese Formel.
Anmerkung
Die PerlinNoise
-Funktion weist einen Bereich von [-1, 1] auf.
Dieser Effekt gibt Pixelwerte in prämultiplizierten Alpha aus.
Effekteigenschaften
Anzeigename und Indexenumeration | Beschreibung |
---|---|
Offset D2D1_TURBULENCE_PROP_OFFSET |
Die Koordinaten, in denen die Turbulenzenausgabe generiert wird. Der Algorithmus, der zum Generieren des Perlin-Rauschens verwendet wird, ist abhängig, sodass ein anderer Offset zu einer anderen Ausgabe führt. Diese Eigenschaft ist nicht gebunden, und die Einheiten werden in DIPs angegeben. Hinweis: Der Offset hat nicht die gleiche Wirkung wie eine Übersetzung, da die Ausgabe der Rauschfunktion unendlich ist und die Funktion um die Kachel umbrochen wird. Der Typ ist D2D1_VECTOR_2F. Der Standardwert ist {0,0f, 0,0f}. |
Größe D2D1_TURBULENCE_PROP_SIZE |
Die Größe der Turbulenzenausgabe. Diese Eigenschaft ist nicht gebunden, und die Einheiten werden in DIPs angegeben. Der Typ ist D2D1_VECTOR_2F. Der Standardwert ist {0,0f, 0,0f}. |
BaseFrequency D2D1_TURBULENCE_PROP_BASE_FREQUENCY |
Die Basisfrequenzen in X- und Y-Richtung. Diese Eigenschaft ist ein Float-Wert und muss größer als 0 sein. Die Einheiten werden in 1/DIPs angegeben. Ein Wert von 1 (1/DIPs) für die Basisfrequenz führt zu dem Perlin-Rauschen, das einen gesamten Zyklus zwischen zwei Pixeln abschließt. Die einfache Interpolation für diese Pixel führt zu vollständig zufälligen Pixeln, da keine Korrelation zwischen den Pixeln besteht. Der Wert 0,1(1/DIPs) für die Basisfrequenz wiederholt die Perlin-Rauschfunktion alle 10 DIPs. Dies führt zu einer Korrelation zwischen Pixeln und dem typischen Turbulenzeneffekt. Der Typ ist D2D1_VECTOR_2F. Der Standardwert ist {0,01f, 0,01f}. |
NumOctaves D2D1_TURBULENCE_PROP_NUM_OCTAVES |
Die Anzahl der Achtecks für die Rauschfunktion. Diese Eigenschaft ist ein UINT32 und muss größer als 0 sein. Der Typ ist UINT32. Der Standardwert ist 1. |
Samen D2D1_TURBULENCE_PROP_SEED |
Der Seed für den Pseudo-Zufallsgenerator. Diese Eigenschaft ist ungebunden. Der Typ ist UINT32. Der Standardwert ist 0. |
Lärm D2D1_TURBULENCE_PROP_NOISE |
Der Turbulenz-Rauschmodus. Diese Eigenschaft kann entweder Fraktalsumme oder Turbulenzensein. Gibt an, ob eine Bitmap basierend auf fraktalem Rauschen oder der Turbulenzfunktion generiert werden soll. Weitere Informationen finden Sie unter Rauschmodi. Der Typ ist D2D1_TURBULENCE_NOISE. Der Standardwert ist D2D1_TURBULENCE_NOISE_FRACTAL_SUM. |
Stichbar D2D1_TURBULENCE_PROP_STITCHABLE |
Schaltet das Heften ein oder aus. Die Basishäufigkeit wird so angepasst, dass die Ausgabebitmap geheftet werden kann. Dies ist nützlich, wenn Sie mehrere Kopien der Ausgabe des Turbulenzeneffekts kacheln möchten.
Der Typ ist BOOL. Der Standardwert ist FALSE. |
Rauschmodi
Aufzählung | Beschreibung |
---|---|
D2D1_TURBULENCE_NOISE_FRACTAL_SUM | Berechnet eine Summe der Oktben, die den Ausgabebereich von [-1, 1], auf [0, 1] verschiebt. |
D2D1_TURBULENCE_NOISE_TURBULENCE | Berechnet eine Summe des absoluten Werts jeder Oktave. |
Anmerkung
Kein Modus enthält eine explizite Klammer der Ausgabewerte.
Ausgabebitmap
Dieser Effekt generiert eine logisch unendliche Bitmap.
Anforderungen
Anforderung | Wert |
---|---|
Mindestens unterstützter Client | Windows 8 und Plattformupdate für Windows 7 [Desktop-Apps | Windows Store-Apps] |
Mindestens unterstützter Server | Windows 8 und Plattformupdate für Windows 7 [Desktop-Apps | Windows Store-Apps] |
Kopfball | d2d1effects.h |
Bibliothek | d2d1.lib, dxguid.lib |