PFND3D10DDI_SETSCISSORRECTS fungsi panggilan balik (d3d10umddi.h)
Fungsi SetScissorRects menandai bagian dari target render yang penyajian terbatas pada.
Sintaks
PFND3D10DDI_SETSCISSORRECTS Pfnd3d10ddiSetscissorrects;
void Pfnd3d10ddiSetscissorrects(
D3D10DDI_HDEVICE unnamedParam1,
[in] UINT NumRects,
[in] UINT ClearRects,
const D3D10_DDI_RECT *unnamedParam4
)
{...}
Parameter
unnamedParam1
hDevice [in]
Handel ke perangkat tampilan (konteks grafis).
[in] NumRects
Jumlah total bagian target render yang ditentukan parameter pRects .
[in] ClearRects
Jumlah bagian render-target setelah jumlah bagian target render yang ditentukan NumScissorRects untuk diatur ke NULL. Angka ini menunjukkan perbedaan antara jumlah bagian target render sebelumnya (yaitu, ketika runtime Microsoft Direct3D yang sebelumnya disebut SetScissorRects) dan jumlah baru bagian target render.
Perhatikan bahwa angka yang ditentukan ClearScissorRects hanyalah bantuan pengoptimalan karena driver tampilan mode pengguna dapat menghitung angka ini.
unnamedParam4
pRects [in]
Array struktur RECT untuk menandai bagian target render.
Menampilkan nilai
Tidak ada
Keterangan
Driver dapat menggunakan fungsi panggilan balik pfnSetErrorCb untuk mengatur kode kesalahan.
Struktur D3D10_DDI_RECT didefinisikan sebagai struktur RECT .
typedef RECT D3D10_DDI_RECT;
Driver tampilan mode pengguna harus mengatur semua bagian target render secara atomik sebagai satu operasi.
Meskipun parameter NumScissorRects menentukan jumlah bagian render-target dalam array yang ditentukan parameter pRects , beberapa nilai dalam array dapat berupa NULL.
Rentang bagian render-target antara angka yang ditentukan NumScissorRects dan jumlah maksimum bagian target render yang diizinkan diperlukan untuk memuat semua nilai NULL atau tidak terikat. Angka yang ditentukan parameter ClearScissorRects memberi tahu driver tentang berapa banyak bagian target render yang harus dibersihkan driver untuk operasi atom saat ini.
Jika panggilan sebelumnya ke SetScissorRects melewati nilai 2 dalam parameter NumScissorRects dan panggilan saat ini ke SetScissorRects meneruskan nilai 4 di NumScissorRects, panggilan saat ini ke SetScissorRects juga melewati nilai 0 di parameter ClearScissorRects . Jika panggilan berturut-turut berikutnya ke SetScissorRects meneruskan nilai 1 di NumScissorRects, panggilan berturut-turut juga melewati nilai 3 (4 - 1) di ClearScissorRects.
Ketika nilai bagian target render yang jelas diminta selama operasi kueri mode pengguna, nilainya adalah perbedaan antara jumlah maksimum bagian target render dan nilai bagian render-target.
Driver seharusnya tidak mengalami kesalahan apa pun, kecuali untuk D3DDDIERR_DEVICEREMOVED. Oleh karena itu, jika driver melewati kesalahan apa pun, kecuali untuk D3DDDIERR_DEVICEREMOVED, dalam panggilan ke fungsi pfnSetErrorCb , runtime Microsoft Direct3D akan menentukan bahwa kesalahan sangat penting. Bahkan jika perangkat dihapus, driver tidak diharuskan untuk mengembalikan D3DDDIERR_DEVICEREMOVED; namun, jika penghapusan perangkat mengganggu pengoperasian SetScissorRects (yang biasanya tidak boleh terjadi), driver dapat mengembalikan D3DDDIERR_DEVICEREMOVED.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Tersedia di Windows Vista dan versi yang lebih baru dari sistem operasi Windows. |
Target Platform | Desktop |
Header | d3d10umddi.h (termasuk D3d10umddi.h) |
Lihat juga
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