Megosztás a következőn keresztül:


Távoli diffúz fényhatás

A távoli diffúz világítási effektussal olyan képet hozhat létre, amely úgy tűnik, hogy nem fényvisszaverő felület, ahol úgy tűnik, hogy a fényforrás nagy távolságból (például a nap vagy a felső fények) származik, és a fény minden irányban el van szórva. Ez az effektus az alfa csatornát használja magasságtérképként, és távoli fényforrással világítja meg a képet.

A kimeneti bitmap színe a fény színének, a fény helyzetének és a kép felületi geometriájának az eredménye. A diffúz megvilágítású képpontok alfa csatornakimenete mindig 1,0.

Az effektus CLSID azonosítója CLSID_D2D1DistantDiffuse.

Példakép

Az alábbi példa a távoli diffúz fényeffektus bemeneti és kimeneti képeit mutatja be.

példaeffektus képernyőképe a távoli diffúz világítási effektus bemeneti és kimeneti képeiről.

Effektus tulajdonságai

Név és index számbavételének megjelenítése Leírás
Azimuth
D2D1_DISTANTDIFFUSE_PROP_AZIMUTH
A fényforrás irányszöge az XY síkban az óra órajelének X tengelyéhez viszonyítva. Az egységek fokban vannak, és 0 és 360 fok között kell lenniük.
A típus FLOAT.
Az alapértelmezett érték 0,0f.
Emelkedés
D2D1_DISTANTDIFFUSE_PROP_ELEVATION
A fényforrás irányszöge az YZ síkban az Y tengelyhez viszonyítva az óra órajele szerint. Az egységek fokban vannak, és 0 és 360 fok között kell lenniük.
A típus FLOAT.
Az alapértelmezett érték 0,0f.
Diffúziós állandó
D2D1_DISTANTDIFFUSE_PROP_DIFFUSE_CONSTANT
A diffúz visszaverődés aránya a bejövő fény mennyiségével. Ennek a tulajdonságnak 0 és 10 000 közöttinek kell lennie, és egység nélkülinek kell lennie.
A típus FLOAT.
Az alapértelmezett érték 1,0f.
SurfaceScale
D2D1_DISTANTDIFFUSE_PROP_SURFACE_SCALE
A skálázási tényező a Z irányban. A felületi skálának egység nélkülinek kell lennie, és 0 és 10 000 közöttinek kell lennie.
A típus FLOAT.
Az alapértelmezett érték 1,0f.
Szín
D2D1_DISTANTDIFFUSE_PROP_COLOR
A bejövő fény színe. Ez a tulajdonság D2D1_VECTOR_3F (R, G, B) néven érhető el, és az LR, LG, LBkiszámítására szolgál.
A típus D2D1_VECTOR_3F.
Az alapértelmezett érték {1.0f, 1.0f, 1.0f}.
KernelEgységhossz
D2D1_DISTANTDIFFUSE_PROP_KERNEL_UNIT_LENGTH
A Sobel-kernel egy elemének mérete, amellyel az X és Y irányban normál felületet hoz létre. Ez a tulajdonság a Sobel-színátmenet dx és dy értékeire lesz leképezve. Ez a tulajdonság egy D2D1_VECTOR_2F (kernelegység hossza X, kernelegység hossza Y), és az eszközfüggetlen képpontokban (DIP-k)/kernelegységekben van definiálva. Az effektus kétvonalas interpolációval skálázza a bitképet a kernelelemek méretének megfelelően.
A típus D2D1_VECTOR_2F.
Az alapértelmezett érték {1.0f, 1.0f}.
ScaleMode
D2D1_DISTANTDIFFUSE_PROP_SKÁLÁZÁSI_MÓD
Az interpolációs mód, amelyet az effektus a rendszerkép megfelelő kernelegységhosszra történő skálázásához használ. Hat skálázási mód van, amelyek minőségben és sebességben is mozognak.
A típus: D2D1_DISTANTDIFFUSE_SCALE_MODE.
Az alapértelmezett érték D2D1_DISTANTDIFFUSE_SCALE_MODE_LINEAR.

Méretezési módok

Felsorolás Leírás
D2D1_DISTANTDIFFUSE_SCALE_MODE_NEAREST_NEIGHBOR A legközelebbi egyetlen pontot mintázza, és azt használja. Ez a mód kevesebb feldolgozási időt használ, de a legalacsonyabb minőségű képet adja ki.
D2D1_DISTANTDIFFUSE_SCALE_MODE_LINEAR Négypontos mintát és lineáris interpolációt használ. Ez a mód jobb minőségű képet ad ki, mint a legközelebbi szomszéd.
D2D1_DISTANTDIFFUSE_SCALE_MODE_CUBIC 16 köbös kernelt használ az interpolációhoz. Ez a mód a legtöbb feldolgozási időt használja, de jobb minőségű képet ad ki.
D2D1_DISTANTDIFFUSE_SCALE_MODE_MULTI_SAMPLE_LINEAR Egyetlen képponton belül 4 lineáris mintát használ a jó élelsimításhoz. Ez a mód alkalmas arra, hogy kisebb méretre skálázza a kevés képpontos képeket.
D2D1_DISTANTDIFFUSE_SCALE_MODE_ANISOTROPIC Anizotróp szűréssel mintát vesz a bitkép átalakított alakjának megfelelően.
D2D1_DISTANTDIFFUSE_SCALE_MODE_HIGH_QUALITY_CUBIC Változó méretű, kiváló minőségű köbös mag használatával előre lecsökkenti a képet, ha az átalakítási mátrix tartalmaz leskálázást. Ezután a végső kimenethez a köbinterpolációs módot használja.

Jegyzet

Ha nem jelöl ki módot, az effektus alapértelmezés szerint D2D1_DISTANTDIFFUSE_SCALE_MODE_LINEAR.

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

ID2D1Effect