Turbulencia effektus
A turbulencia effektussal bitképet hozhat létre a Perlin zajfüggvény alapján.
A turbulencia effektus nem rendelkezik bemeneti képpel.
Az effektus CLSID azonosítója CLSID_D2D1Turbulence.
Példakép
A Turbulencia effektus kiszámítja a Perlin zajfüggvény egy vagy több oktavának összegét. A perlin zaj egy pszeudo-véletlenszerű függvény, amelynek értéke a gyakoriságtól, a pozíciótól és a magértéktől függ. Az effektus ezen egyenletek egyikével hozza létre az RGBA-értékeket.
Ha a D2D1_TURBULENCE_NOISE_FRACTAL_SUM zaj üzemmódot választja, az effektus ezt az egyenletet használja.
Ha a D2D1_TURBULENCE_NOISE_TURBULENCE zaj üzemmódot választja, az effektus ezt az egyenletet használja.
Jegyzet
A PerlinNoise
függvény tartománya [-1, 1].
Ez az effektus képpontértékeket ad ki előre meghatározott alfa formátumban.
Effektus tulajdonságai
Név és index számbavételének megjelenítése | Leírás |
---|---|
Ellensúlyoz D2D1_TURBULENCE_PROP_OFFSET |
Azok a koordináták, ahol a turbulencia kimenete létre van hozva. A Perlin-zaj létrehozásához használt algoritmus pozíciófüggő, így egy másik eltolás más kimenetet eredményez. Ez a tulajdonság nincs határban, és az egységek a DIP-kben vannak megadva Megjegyzés: Az eltolásnak nincs ugyanaz a hatása, mint a fordításnak, mert a zajfüggvény kimenete végtelen, és a függvény körbefut a csempén. A típus D2D1_VECTOR_2F. Az alapértelmezett érték {0.0f, 0.0f}. |
Méret D2D1_TURBULENCE_PROP_SIZE |
A turbulencia kimenetének mérete. Ez a tulajdonság nincs határban, és az egységek a DIP-kben vannak megadva A típus D2D1_VECTOR_2F. Az alapértelmezett érték {0.0f, 0.0f}. |
BaseFrequency D2D1_TURBULENCE_PROP_BASE_FREQUENCY |
Az alapfrekvenciák X és Y irányban. Ez a tulajdonság lebegőpontos, és 0-nál nagyobbnak kell lennie. Az egységek 1/DIP-ben vannak megadva. Az alapfrekvencia 1 (1/DIP) értéke azt eredményezi, hogy a Perlin-zaj két képpont közötti teljes ciklust fejez ki. A képpontok egyszerű interpolációja teljesen véletlenszerű képpontokat eredményez, mivel nincs korreláció a képpontok között. Az alapfrekvencia 0,1(1/DIP) értéke, a Perlin zajfüggvény 10 DIP-ként ismétlődik. Ez korrelációt eredményez a képpontok és a tipikus turbulenciahatás között. A típus D2D1_VECTOR_2F. Az alapértelmezett érték {0.01f, 0.01f}. |
NumOctaves D2D1_TURBULENCE_PROP_NUM_OCTAVES |
A zajfüggvény oktavainak száma. Ez a tulajdonság UINT32, és 0-nál nagyobbnak kell lennie. A típus UINT32. Az alapértelmezett érték 1. |
Mag D2D1_TURBULENCE_PROP_SEED |
A pszeudo véletlen generátor magja. Ez a tulajdonság kötetlen. A típus UINT32. Az alapértelmezett érték 0. |
Zaj D2D1_TURBULENCE_PROP_NOISE |
A turbulenciazaj mód. Ez a tulajdonság lehet fraktálösszeg vagy turbulencia. Azt jelzi, hogy fraktál zaj vagy turbulencia függvény alapján hozzon létre bitképet. További információért lásd zaj üzemmódokat. A típus D2D1_TURBULENCE_NOISE. Az alapértelmezett érték D2D1_TURBULENCE_NOISE_FRACTAL_SUM. |
Varrható D2D1_TURBULENCE_PROP_STITCHABLE |
Be- vagy kikapcsolja a varrást. Az alapfrekvencia úgy van beállítva, hogy a kimeneti bitkép összefűzhető legyen. Ez akkor hasznos, ha a turbulenciaeffektus kimenetének több másolatát szeretné csempézni.
A típus BOOL. Az alapértelmezett érték HAMIS. |
Zaj üzemmódok
Felsorolás | Leírás |
---|---|
D2D1_TURBULENCE_NOISE_FRACTAL_SUM | Kiszámítja az oktavok összegét, és a kimeneti tartományt [-1, 1] értékről [0, 1] értékre váltja. |
D2D1_TURBULENCE_NOISE_TURBULENCE | Kiszámítja az egyes oktávok abszolút értékének összegét. |
Jegyzet
Egyik mód sem tartalmazza a kimeneti értékek explicit rögzítését.
Kimeneti bitkép
Ez az effektus logikailag végtelen méretű bitképet hoz létre.
Követelmények
Követelmény | Érték |
---|---|
Minimálisan támogatott ügyfél | Windows 8 és Platform Update for Windows 7 [asztali alkalmazások | Windows Áruházbeli alkalmazások] |
Minimálisan támogatott kiszolgáló | Windows 8 és Platform Update for Windows 7 [asztali alkalmazások | Windows Áruházbeli alkalmazások] |
Fejléc | d2d1effects.h |
Könyvtár | d2d1.lib, dxguid.lib |