D3DPRESENT
Menjelaskan hubungan antara laju refresh adaptor dan laju di mana operasi Present atau Present selesai. Nilai-nilai ini juga berfungsi sebagai nilai bendera untuk bidang PresentationIntervals D3DCAPS9.
Terus-menerus | Deskripsi |
---|---|
|
Gunakan buffer depan sebagai permukaan sumber dan target selama penyajian. Sinkronisasi bingkai dijadwalkan tetapi permukaan yang ditampilkan tidak berubah. Bendera ini hanya tersedia ketika aplikasi dalam mode layar penuh dan D3DSWAPEFFECT_FLIPEX telah ditentukan. Bendera ini hanya tersedia di Direct3D 9Ex. |
|
Presentasi tidak dapat dijadwalkan oleh perangkat hal. Jika bendera ini diatur dalam panggilan ke Ada, dan perangkat keras sibuk memproses atau menunggu interval sinkronisasi vertikal, maka Ada akan mengembalikan D3DERR_WASSTILLDRAWING untuk menunjukkan bahwa operasi blit tidak lengkap. |
|
Dicadangkan. |
|
D3DPRESENT_INTERVAL_IMMEDIATE diberlakukan pada panggilan Saat ini. Bendera ini hanya dapat ditentukan saat menggunakan D3DSWAPEFFECT_FLIPEX. Perilaku presentasi berjendela dan layar penuh sama. Ini sangat berguna untuk aplikasi media yang ingin membuang bingkai yang telah terdeteksi terlambat dan menyajikan bingkai berikutnya pada waktu komposisi. Kesalahan parameter yang tidak valid akan dikembalikan jika bendera ini ditentukan secara tidak benar. Ketika beberapa bingkai berturut-turut dengan D3DPRESENT_FORCEIMMEDIATEs diantrekan, hanya bingkai terakhir yang ditampilkan, untuk presentasi berjendela dan layar penuh. Bendera ini tersedia di Direct3D 9Ex pada sistem operasi Windows 7 atau yang lebih baru. Saat menggunakan D3DSWAPEFFECT_FLIPEX, setiap bingkai yang disajikan menggunakan D3DPRESENT_INTERVAL_IMMEDIATE atau D3DPRESENT_INTERVAL_FORCEIMMEDIATE akan menggantikan interval bingkai sebelumnya yang ada. Misalnya, jika Anda mengantre bingkai berikut menggunakan efek pertukaran berikut: bingkai A (D3DPRESENT_INTERVAL_ONE), bingkai B(D3DPRESENT_INTERVAL_ONE), bingkai C(D3DPRESENT_INTERVAL_ONE), bingkai D(D3DPRESENT_INTERVAL_FORCEIMMEDIATE), bingkai D akan menimpa interval bingkai C saat ini. Bingkai yang ditampilkan per interval saat ini adalah bingkai A, bingkai B, (bingkai C ditimpa oleh) bingkai D. Lihat Keterangan. |
|
Ini hampir setara dengan D3DPRESENT_INTERVAL_ONE. Lihat komentar. |
|
Driver akan menunggu periode pelacakan ulang vertikal (runtime akan "mengikuti sinar" untuk mencegah sobek).
Operasi yang ada tidak akan terpengaruh lebih sering daripada refresh layar; runtime akan selesai paling banyak satu operasi Present per periode refresh adaptor. Ini setara dengan menggunakan D3DSWAPEFFECT_COPYVSYNC di DirectX 8.1. Opsi ini selalu tersedia untuk rantai pertukaran berjendela dan layar penuh. Lihat komentar. |
|
Driver akan menunggu periode pelacakan ulang vertikal.
Operasi yang ada tidak akan terpengaruh lebih sering daripada setiap refresh layar kedua. Periksa batas PresentationIntervals (lihat D3DCAPS9) untuk melihat apakah D3DPRESENT_INTERVAL_TWO didukung oleh driver. |
|
Driver akan menunggu periode pelacakan ulang vertikal. Operasi yang ada tidak akan terpengaruh lebih sering daripada setiap refresh layar ketiga. Periksa batas PresentationIntervals (lihat D3DCAPS9) untuk melihat apakah D3DPRESENT_INTERVAL_THREE didukung oleh driver. |
|
Driver akan menunggu periode pelacakan ulang vertikal. Operasi yang ada tidak akan terpengaruh lebih sering daripada setiap refresh layar keempat. Periksa anggota PresentationIntervals (lihat D3DCAPS9) untuk melihat apakah D3DPRESENT_INTERVAL_FOUR didukung oleh driver. |
|
Runtime segera memperbarui area klien jendela dan mungkin melakukannya lebih dari sekali selama periode refresh adaptor. Ini setara dengan menggunakan D3DSWAPEFFECT_COPY di DirectX 8.
Operasi saat ini mungkin segera terpengaruh. Opsi ini selalu tersedia untuk rantai pertukaran berjendela dan layar penuh. Lihat komentar. |
|
Konten buffer belakang yang akan disajikan ada di ruang warna linier.
|
D3DPRESENT_VIDEO_RESTRICT_TO_MONITOR |
Klip konten yang dirender ke monitor/perangkat yang ditargetkan adaptor, memperlihatkan gambar mini untuk konten dalam tampilan Flip3D dan gambar mini taskbar pada monitor lain. Bendera ini hanya tersedia di Direct3D 9Ex. Lihat Desktop Window Manager untuk detail lebih lanjut tentang fitur Windows Vista ini. Jika Anda tidak berjalan dalam mode komposisi desktop, bendera memberikan perilaku yang sama dengan D3DPRESENTFLAG_DEVICECLIP. Catatan: Bendera ini hanya boleh digunakan dengan efek pertukaran D3DSWAPEFFECT_FLIPEX. Penggunaan bendera ini dengan efek pertukaran lainnya tidak digunakan lagi, dan mungkin tidak berfungsi di versi Windows yang akan datang. |
|
Updates posisi overlay atau data colorkey tanpa menyebabkan flip aktual dan tanpa mengubah durasi gambar ditampilkan. Bendera ini hanya tersedia di Direct3D 9Ex. |
|
Mematikan perangkat keras overlay. Bendera ini hanya tersedia di Direct3D 9Ex. |
|
Menggambar ulang data colorkey. Bendera ini hanya tersedia di Direct3D 9Ex. |
Mode berjendela mendukung D3DPRESENT_INTERVAL_DEFAULT, D3DPRESENT_INTERVAL_IMMEDIATE, dan D3DPRESENT_INTERVAL_ONE. D3DPRESENT_INTERVAL_DEFAULT dan D3DPRESENT_INTERVAL_ONE hampir setara (lihat informasi mengenai resolusi timer di bawah). Performanya mirip dengan COPY_VSYNC karena hanya ada satu hadir per bingkai, dan mereka mencegah merobek dengan beam-following. Sebaliknya, D3DPRESENT_INTERVAL_IMMEDIATE akan mencoba memberikan tingkat presentasi tanpa batas.
Mode layar penuh mendukung penggunaan serupa sebagai mode berjendela dengan mendukung D3DPRESENT_INTERVAL_IMMEDIATE terlepas dari kecepatan refresh atau efek pertukaran. D3DPRESENT_INTERVAL_DEFAULT menggunakan resolusi timer sistem default sedangkan D3DPRESENT_INTERVAL_ONE memanggil timeBeginPeriod untuk meningkatkan resolusi timer sistem. Ini meningkatkan kualitas sinkronisasi vertikal, tetapi mengkonsumsi sedikit lebih banyak waktu pemrosesan. Kedua parameter mencoba menyinkronkan secara vertikal.
Persyaratan | Nilai |
---|---|
Header |
|