Baca dalam bahasa Inggris

Bagikan melalui


Fungsi D3D12EnableExperimentalFeatures (d3d12.h)

Mengaktifkan daftar fitur eksperimental.

Sintaks

HRESULT D3D12EnableExperimentalFeatures(
       UINT      NumFeatures,
  [in] const IID *pIIDs,
  [in] void      *pConfigurationStructs,
  [in] UINT      *pConfigurationStructSizes
);

Parameter

NumFeatures

Jenis: UINT

Jumlah fitur eksperimental yang akan diaktifkan.

[in] pIIDs

Jenis: const IID*

SAL: __in_ecount(NumFeatures)

Penunjuk ke array ID yang menentukan fitur eksperimental mana yang tersedia untuk diaktifkan.

[in] pConfigurationStructs

Jenis: batal*

SAL: __in_ecount(NumFeatures)

Struktur yang berisi detail konfigurasi tambahan yang mungkin perlu diaktifkan oleh beberapa fitur eksperimental.

[in] pConfigurationStructSizes

Jenis: UINT*

SAL: __in_ecount(NumFeatures)

Ukuran struct konfigurasi apa pun yang diteruskan dalam parameter pConfigurationStructs.

Nilai kembali

Jenis: HRESULT

Metode ini mengembalikan kode keberhasilan atau kesalahan HRESULT yang dapat menyertakan E_NOINTERFACE jika fitur yang tidak dikenal ditentukan atau Mode Pengembang tidak diaktifkan, atau E_INVALIDARG jika konfigurasi fitur sudah benar, fitur eksperimental yang ditentukan tidak kompatibel, atau kesalahan lainnya.

Keterangan

Panggil fungsi ini sebelum pembuatan perangkat.

Karena serangkaian fitur eksperimental akan berubah dari waktu ke waktu, dan karena fitur-fitur ini mungkin tidak stabil, fitur ini hanya ditujukan untuk pengembangan dan eksperimen. Ini diberlakukan dengan mengharuskan Mode Pengembang aktif sebelum fitur eksperimental apa pun dapat diaktifkan.

Kumpulan fitur eksperimental yang saat ini didukung dapat ditemukan di header D3D12.h, di dekat definisi fungsi D3D12EnableExperimentalFeatures; karena fitur eksperimental jarang tersedia, biasanya tidak ada fitur eksperimental yang saat ini didukung.

Beberapa fitur eksperimental mungkin diidentifikasi dengan menggunakan IID sebagai GUID. Untuk fitur-fitur ini, Anda dapat menggunakan D3D12GetDebugInterface, meneruskan IID sebagai parameter, untuk mengambil antarmuka untuk memanipulasi fitur tersebut.

Jika fungsi ini dipanggil lagi dengan daftar fitur yang berbeda untuk diaktifkan, semua perangkat D3D12 saat ini diatur ke status DEVICE_REMOVED.

Contoh

Contoh ini menunjukkan seperti apa definisi fitur eksperimental.

// --------------------------------------------------------------------------------------------------------------------------------
// Experimental Feature: D3D12ExperimentalShaderModels
//
// Use with D3D12EnableExperimentalFeatures to enable experimental shader model support,
// meaning shader models that haven't been finalized for use in retail.
//
// Enabling D3D12ExperimentalShaderModels needs no configuration struct, pass NULL in the pConfigurationStructs array.
//
// --------------------------------------------------------------------------------------------------------------------------------
static const UUID D3D12ExperimentalShaderModels = { /* 76f5573e-f13a-40f5-b297-81ce9e18933f */
    0x76f5573e,
    0xf13a,
    0x40f5,
    { 0xb2, 0x97, 0x81, 0xce, 0x9e, 0x18, 0x93, 0x3f }
};
	

Persyaratan

   
Target Platform Windows
Header d3d12.h
Pustaka D3D12.lib
DLL D3D12.dll

Lihat juga

Fungsi Inti