Bagikan melalui


Metode ID3D11DeviceContext::SetPredication (d3d11.h)

Atur predikat penyajian.

Sintaks

void SetPredication(
  [in, optional] ID3D11Predicate *pPredicate,
  [in]           BOOL            PredicateValue
);

Parameter

[in, optional] pPredicate

Jenis: ID3D11Predicate*

Penunjuk ke antarmuka ID3D11Predicate yang mewakili predikat penyajian. Nilai NULL menunjukkan predikasi "tidak"; dalam hal ini, nilai PredicateValue tidak relevan tetapi akan dipertahankan untuk ID3D11DeviceContext::GetPredication.

[in] PredicateValue

Jenis: BOOL

Jika TRUE, penyajian akan dipengaruhi oleh ketika kondisi predikat terpenuhi. Jika FALSE, penyajian akan terpengaruh ketika kondisi tidak terpenuhi.

Nilai kembali

Tidak ada

Keterangan

Predikat harus dalam status "dikeluarkan" atau "diberi sinyal" untuk digunakan untuk predikasi. Saat predikat diatur untuk predikasi, panggilan ke ID3D11DeviceContext::Begin dan ID3D11DeviceContext::End tidak valid.

Gunakan metode ini untuk menunjukkan bahwa perintah penyajian dan manipulasi sumber daya berikutnya tidak benar-benar dilakukan jika data predikat predikat yang dihasilkan sama dengan PredicateValue. Namun, beberapa predikat hanyalah petunjuk, sehingga mereka mungkin tidak benar-benar mencegah operasi dilakukan.

Kegunaan utama predikasi adalah memungkinkan aplikasi mengeluarkan perintah penyajian dan manipulasi sumber daya tanpa mengambil hit performa pemutaran, menunggu ID3D11DeviceContext::GetData kembali. Jadi, predikasi dapat terjadi saat ID3D11DeviceContext::GetData mengembalikan S_FALSE. Cara lain untuk menganggapnya: aplikasi juga dapat menggunakan predikasi sebagai fallback, jika mungkin ID3D11DeviceContext::GetData mengembalikan S_FALSE. Jika ID3D11DeviceContext::GetData mengembalikan S_OK, aplikasi dapat melewati panggilan perintah rendering dan manipulasi sumber daya secara manual dengan logika aplikasinya sendiri.

Perintah rendering dan manipulasi sumber daya untuk Direct3D 11 termasuk operasi Draw, Dispatch, Copy, Update, Clear, Generate, dan Resolve ini.

Anda dapat mengatur predikat penyajian pada konteks langsung atau ditangguhkan. Untuk informasi tentang konteks segera dan ditangguhkan, lihat Rendering Segera dan Ditangguhkan.

Persyaratan

Persyaratan Nilai
Target Platform Windows
Header d3d11.h
Pustaka D3D11.lib

Lihat juga

ID3D11DeviceContext