Efek turbulensi
Gunakan efek turbulensi untuk menghasilkan bitmap berdasarkan fungsi kebisingan Perlin.
Efek turbulensi tidak memiliki gambar input.
CLSID untuk efek ini CLSID_D2D1Turbulence.
Contoh gambar
Efek Turbulensi menghitung jumlah satu atau beberapa oktaf fungsi kebisingan Perlin. Kebisingan Perlin adalah fungsi pseudo-random yang nilainya tergantung pada nilai frekuensi, posisi, dan benih. Efeknya menghasilkan nilai RGBA menggunakan salah satu persamaan ini.
Jika Anda memilih mode kebisingan D2D1_TURBULENCE_NOISE_FRACTAL_SUM, efeknya menggunakan persamaan ini.
Jika Anda memilih mode kebisingan D2D1_TURBULENCE_NOISE_TURBULENCE, efeknya menggunakan persamaan ini.
Catatan
Fungsi ini PerlinNoise
memiliki rentang [-1, 1].
Efek ini menghasilkan nilai piksel dalam alfa yang telah ditentukan sebelumnya.
Properti efek
Nama tampilan dan enumerasi indeks | Deskripsi |
---|---|
Offset D2D1_TURBULENCE_PROP_OFFSET |
Koordinat tempat output turbulensi dihasilkan. Algoritma yang digunakan untuk menghasilkan kebisingan Perlin tergantung pada posisi, sehingga offset yang berbeda menghasilkan output yang berbeda. Properti ini tidak terikat dan unit ditentukan dalam DIP Catatan: Offset tidak memiliki efek yang sama dengan terjemahan karena output fungsi kebisingan tidak terbatas dan fungsi akan membungkus ubin. Jenisnya D2D1_VECTOR_2F. Nilai defaultnya adalah {0.0f, 0.0f}. |
Ukuran D2D1_TURBULENCE_PROP_SIZE |
Ukuran output turbulensi. Properti ini tidak terikat dan unit ditentukan dalam DIP Jenisnya D2D1_VECTOR_2F. Nilai defaultnya adalah {0.0f, 0.0f}. |
BaseFrequency D2D1_TURBULENCE_PROP_BASE_FREQUENCY |
Frekuensi dasar ke arah X dan Y. Properti ini adalah float dan harus lebih besar dari 0. Unit ditentukan dalam 1/DIP. Nilai 1 (1/DIP) untuk frekuensi dasar menghasilkan kebisingan Perlin yang menyelesaikan seluruh siklus antara dua piksel. Interpolasi mudah untuk piksel ini menghasilkan piksel yang sepenuhnya acak, karena tidak ada korelasi antara piksel. Nilai 0,1(1/DIP) untuk frekuensi dasar, fungsi kebisingan Perlin mengulangi setiap 10 DIP. Ini menghasilkan korelasi antara piksel dan efek turbulensi umum terlihat. Jenisnya D2D1_VECTOR_2F. Nilai defaultnya adalah {0.01f, 0.01f}. |
NumOctaves D2D1_TURBULENCE_PROP_NUM_OCTAVES |
Jumlah oktaf untuk fungsi kebisingan. Properti ini adalah UINT32 dan harus lebih besar dari 0. Jenisnya adalah UINT32. Nilai default adalah 1. |
Benih D2D1_TURBULENCE_PROP_SEED |
Benih untuk generator acak pseudo. Properti ini tidak terbatas. Jenisnya adalah UINT32. Nilai default adalah 0. |
Derau D2D1_TURBULENCE_PROP_NOISE |
Mode kebisingan turbulensi. Properti ini bisa berupa jumlah fraktal atau turbulensi. Menunjukkan apakah akan menghasilkan bitmap berdasarkan Kebisingan Fraktal atau fungsi Turbulensi. Lihat Mode kebisingan untuk informasi selengkapnya. Jenisnya D2D1_TURBULENCE_NOISE. Nilai defaultnya adalah D2D1_TURBULENCE_NOISE_FRACTAL_SUM. |
Dapat dijahit D2D1_TURBULENCE_PROP_STITCHABLE |
Mengaktifkan atau menonaktifkan jahitan. Frekuensi dasar disesuaikan sehingga bitmap output dapat dijahit. Ini berguna jika Anda ingin memiringkan beberapa salinan output efek turbulensi.
Jenisnya adalah BOOL. Nilai defaultnya adalah FALSE. |
Mode kebisingan
Enumeration | Deskripsi |
---|---|
D2D1_TURBULENCE_NOISE_FRACTAL_SUM | Menghitung jumlah oktaf, menggeser rentang output dari [-1, 1], ke [0, 1]. |
D2D1_TURBULENCE_NOISE_TURBULENCE | Menghitung jumlah nilai absolut dari setiap oktaf. |
Catatan
Mode tidak berisi klem eksplisit dari nilai output.
Bitmap output
Efek ini menghasilkan bitmap berukuran logis tak terbatas.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Pembaruan Windows 8 dan Platform untuk Windows 7 [aplikasi desktop | Aplikasi Bursa Windows] |
Server minimum yang didukung | Pembaruan Windows 8 dan Platform untuk Windows 7 [aplikasi desktop | Aplikasi Bursa Windows] |
Header | d2d1effects.h |
Pustaka | d2d1.lib, dxguid.lib |
Topik terkait
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk