Metode IDirect3D9::CheckDeviceMultiSampleType (d3d9.h)

Menentukan apakah teknik multisampling tersedia pada perangkat ini.

Sintaks

HRESULT CheckDeviceMultiSampleType(
  [in]  UINT                Adapter,
  [in]  D3DDEVTYPE          DeviceType,
  [in]  D3DFORMAT           SurfaceFormat,
  [in]  BOOL                Windowed,
  [in]  D3DMULTISAMPLE_TYPE MultiSampleType,
  [out] DWORD               *pQualityLevels
);

Parameter

[in] Adapter

Jenis: UINT

Nomor ordinal yang menunjukkan adaptor tampilan untuk kueri. D3DADAPTER_DEFAULT selalu merupakan adaptor tampilan utama. Metode ini mengembalikan FALSE ketika nilai ini sama atau melebihi jumlah adaptor tampilan dalam sistem. Lihat Keterangan.

[in] DeviceType

Jenis: D3DDEVTYPE

Anggota jenis enumerasi D3DDEVTYPE , mengidentifikasi jenis perangkat.

[in] SurfaceFormat

Jenis: D3DFORMAT

Anggota jenis enumerasi D3DFORMAT yang menentukan format permukaan yang akan di-multisampel. Untuk informasi selengkapnya, lihat Keterangan.

[in] Windowed

Jenis: BOOL

nilai bool. Tentukan TRUE untuk menanyakan tentang multisampling berjendela, dan tentukan FALSE untuk menanyakan multisampling layar penuh.

[in] MultiSampleType

Jenis: D3DMULTISAMPLE_TYPE

Anggota jenis enumerasi D3DMULTISAMPLE_TYPE , mengidentifikasi teknik multisampling untuk diuji.

[out] pQualityLevels

Jenis: DWORD*

pQualityLevels mengembalikan jumlah variasi pengambilan sampel khusus perangkat yang tersedia dengan jenis sampel yang diberikan. Misalnya, jika nilai yang dikembalikan adalah 3, maka tingkat kualitas 0, 1 dan 2 dapat digunakan saat membuat sumber daya dengan jumlah sampel yang diberikan. Arti dari tingkat kualitas ini didefinisikan oleh produsen perangkat dan tidak dapat dikueri melalui D3D. Misalnya, untuk tingkat kualitas perangkat tertentu yang berbeda pada jumlah sampel tetap mungkin mengacu pada tata letak spasial yang berbeda dari lokasi sampel atau metode penyelesaian yang berbeda. Ini bisa NULL jika tidak perlu mengembalikan tingkat kualitas.

Menampilkan nilai

Jenis: HRESULT

Jika perangkat dapat melakukan metode multisampling yang ditentukan, metode ini mengembalikan D3D_OK. D3DERR_INVALIDCALL dikembalikan jika parameter Adapter atau MultiSampleType tidak valid. Metode ini mengembalikan D3DERR_NOTAVAILABLE jika teknik multisampling yang dikueri tidak didukung oleh perangkat ini. D3DERR_INVALIDDEVICE dikembalikan jika DeviceType tidak berlaku untuk adaptor ini.

Keterangan

Metode ini ditujukan untuk digunakan dengan permukaan target render dan stensil kedalaman karena Anda harus membuat kedua permukaan multisampled jika Anda ingin menggunakannya bersama-sama.

Fragmen kode berikut menunjukkan bagaimana Anda dapat menggunakan CheckDeviceMultiSampleType untuk menguji perangkat yang mendukung metode multisampling tertentu.


if( SUCCEEDED(pD3D->CheckDeviceMultiSampleType( pCaps->AdapterOrdinal, 
                                pCaps->DeviceType, BackBufferFormat, 
                                FALSE, D3DMULTISAMPLE_3_SAMPLES, NULL ) ) &&
         SUCCEEDED(pD3D->CheckDeviceMultiSampleType( pCaps->AdapterOrdinal, 
                                pCaps->DeviceType, DepthBufferFormat, 
                                FALSE, D3DMULTISAMPLE_3_SAMPLES, NULL ) ) )
    return S_OK;

Kode sebelumnya akan mengembalikan S_OK jika perangkat mendukung metode multisampling D3DMULTISAMPLE_3_SAMPLES layar penuh dengan format permukaan.

Lihat keterangan di D3DMULTISAMPLE_TYPE untuk informasi tambahan tentang bekerja dengan dan mengatur jenis multisample dan tingkat kualitas.

Persyaratan

   
Target Platform Windows
Header d3d9.h (termasuk D3D9.h)
Pustaka D3D9.lib

Lihat juga

IDirect3D9