Aracılığıyla paylaş


Türbülans etkisi

Perlin kirlilik işlevini temel alan bir bit eşlem oluşturmak için türbülans efektini kullanın.

Türbülans etkisinin giriş görüntüsü yoktur.

Bu etki için CLSID CLSID_D2D1Turbulence.

Örnek resim

türbülans efektinin çıkışını gösteren efekt örneği ekran görüntüsü.

Türbülans etkisi, Perlin kirlilik işlevinin bir veya daha fazla sekizlisinin toplamını hesaplar. Perlin gürültüsü, değeri sıklık, konum ve tohum değerine bağlı olan sahte rastgele bir işlevdir. Etki, bu denklemlerden birini kullanarak RGBA değerlerini oluşturur.

D2D1_TURBULENCE_NOISE_FRACTAL_SUM kirlilik modunu seçerseniz efekt bu denklemi kullanır.

Bit eşlem oluşturmak için kullanılan türbülans işlevini gösteren ekran görüntüsü.

D2D1_TURBULENCE_NOISE_TURBULENCE kirlilik modunu seçerseniz efekt bu denklemi kullanır.

Bit eşlem oluşturmak için kullanılan türbülans işlevini .

Not

PerlinNoise işlevi [-1, 1] aralığına sahiptir.

Bu efekt, önceden yüklenmiş alfada piksel değerleri verir.

Efekt özellikleri

Görünen ad ve dizin numaralandırması Açıklama
Ofset
D2D1_TURBULENCE_PROP_OFFSET
Türbülans çıkışının oluşturulduğu koordinatlar.
Perlin gürültüsünü oluşturmak için kullanılan algoritma konuma bağlıdır, bu nedenle farklı bir uzaklık farklı bir çıkışla sonuçlanır. Bu özellik sınırlanmaz ve birimler IP'lerde belirtilir
Not: Noise işlevi çıkışı sonsuz olduğundan ve işlev kutucuğun çevresinde kaydırılacağından uzaklık, çeviriyle aynı etkiye sahip değildir.
Türü D2D1_VECTOR_2F.
Varsayılan değer: {0.0f, 0.0f}.
Boyut
D2D1_TURBULENCE_PROP_SIZE
Türbülans çıkışının boyutu.
Bu özellik sınırlanmaz ve birimler IP'lerde belirtilir

Türü D2D1_VECTOR_2F.
Varsayılan değer: {0.0f, 0.0f}.
BaseFrequency
D2D1_TURBULENCE_PROP_BASE_FREQUENCY
X ve Y yönündeki baz frekanslar. Bu özellik bir float değeridir ve 0'dan büyük olmalıdır. Birimler 1/DIP cinsinden belirtilir.
Taban frekans için 1 (1/DIPs) değeri, Perlin gürültüsünün iki piksel arasındaki döngünün tamamını tamamlamasını sağlar. Pikseller arasında bağıntı olmadığından bu pikseller için kolay ilişkilendirme tamamen rastgele piksellere neden olur.
Taban frekans için 0,1(1/DIPS) değeri olan Perlin kirlilik işlevi her 10 DIP'de bir tekrar eder. Bu, pikseller ile tipik türbülans efekti arasındaki bağıntının görünür olmasıyla sonuçlanır.
Türü D2D1_VECTOR_2F.
Varsayılan değer: {0.01f, 0.01f}.
NumOctaves
D2D1_TURBULENCE_PROP_NUM_OCTAVES
Gürültü işlevi için oktav sayısı. Bu özellik bir UINT32'dir ve 0'dan büyük olmalıdır.
Türü UINT32'dir.
Varsayılan değer 1'dir.
Tohum
D2D1_TURBULENCE_PROP_SEED
Sahte rastgele oluşturucunun tohumu. Bu özellik sınırsız.
Türü UINT32'dir.
Varsayılan değer 0'dır.
Gürültü
D2D1_TURBULENCE_PROP_NOISE
Türbülans gürültü modu. Bu özellik fraktal toplam veya türbülansolabilir. Fraktal Kirliliğe veya Türbülans işlevine dayalı bir bit eşlem oluşturulup oluşturulmayacağını gösterir. Daha fazla bilgi için bkz. Gürültü modları.
Tür D2D1_TURBULENCE_NOISE.
Varsayılan değer D2D1_TURBULENCE_NOISE_FRACTAL_SUM.
Dikilebilir
D2D1_TURBULENCE_PROP_STITCHABLE
Dikişi açar veya kapatır. Taban frekans, çıkış bit eşleminin birleştirilebilmesi için ayarlanır. Türbülans etkisi çıkışının birden çok kopyasını döşemek istiyorsanız bu yararlı olur.
  • True Çıkış bit eşlemi, dikişler görünmeden kutucuk (kutucuk efekti kullanılarak) olabilir. Taban frekans, çıkış bit eşleminin birleştirilebilmesi için ayarlanır.
  • False Temel sıklık ayarlanmadığından bit eşlem kutucukluysa kutucuklar arasında dikişler görünebilir.

Türü BOOL'dir.
Varsayılan değer YANLIŞ'tır.

Gürültü modları

Sayım Açıklama
D2D1_TURBULENCE_NOISE_FRACTAL_SUM Çıkış aralığını [-1, 1] yerine [0, 1] kaydırarak sekizlilerin toplamını hesaplar.
D2D1_TURBULENCE_NOISE_TURBULENCE Her sekizlinin mutlak değerinin toplamını hesaplar.

Not

Her iki mod da çıkış değerlerinin açık bir kıskaçını içermez.

Çıktı bit eşlemi

Bu etki mantıksal olarak sonsuz boyutlu bir bit eşlem oluşturur.

Gereksinim -leri

Gereksinim Değer
Desteklenen en düşük istemci Windows 7 için Windows 8 ve Platform Güncelleştirmesi [masaüstü uygulamaları | Windows Mağazası uygulamaları]
Desteklenen en düşük sunucu Windows 7 için Windows 8 ve Platform Güncelleştirmesi [masaüstü uygulamaları | Windows Mağazası uygulamaları]
Üstbilgi d2d1effects.h
Kütüphane d2d1.lib, dxguid.lib

ID2D1Fefek