Bagikan melalui


enumerasi D3D10_CREATE_DEVICE_FLAG (d3d10.h)

Bendera pembuatan perangkat.

Sintaks

typedef enum D3D10_CREATE_DEVICE_FLAG {
  D3D10_CREATE_DEVICE_SINGLETHREADED = 0x1,
  D3D10_CREATE_DEVICE_DEBUG = 0x2,
  D3D10_CREATE_DEVICE_SWITCH_TO_REF = 0x4,
  D3D10_CREATE_DEVICE_PREVENT_INTERNAL_THREADING_OPTIMIZATIONS = 0x8,
  D3D10_CREATE_DEVICE_ALLOW_NULL_FROM_MAP = 0x10,
  D3D10_CREATE_DEVICE_BGRA_SUPPORT = 0x20,
  D3D10_CREATE_DEVICE_PREVENT_ALTERING_LAYER_SETTINGS_FROM_REGISTRY = 0x80,
  D3D10_CREATE_DEVICE_STRICT_VALIDATION = 0x200,
  D3D10_CREATE_DEVICE_DEBUGGABLE = 0x400
} ;

Konstanta

 
D3D10_CREATE_DEVICE_SINGLETHREADED
Nilai: 0x1
Gunakan bendera ini jika aplikasi hanya akan memanggil D3D10 dari satu utas. Jika bendera ini tidak ditentukan, perilaku default D3D10
adalah memasukkan kunci selama setiap panggilan API untuk mencegah beberapa utas mengubah status internal. Dengan menggunakan bendera ini, tidak ada kunci yang akan diambil yang dapat diambil
sedikit meningkatkan performa, tetapi dapat mengakibatkan perilaku yang tidak jelas jika D3D10 dipanggil dari beberapa utas.
D3D10_CREATE_DEVICE_DEBUG
Nilai: 0x2
Buat perangkat yang mendukung lapisan debug.
D3D10_CREATE_DEVICE_SWITCH_TO_REF
Nilai: 0x4
Buat perangkat lunak (REF) dan perangkat keras (HAL) secara bersamaan, yang memungkinkan aplikasi untuk beralih ke
mereferensikan perangkat untuk mengaktifkan penelusuran kesalahan. Lihat Antarmuka ID3D10SwitchToRef untuk informasi selengkapnya.
D3D10_CREATE_DEVICE_PREVENT_INTERNAL_THREADING_OPTIMIZATIONS
Nilai: 0x8
Mencegah beberapa utas dibuat. Ketika bendera ini digunakan dengan perangkat WARP, tidak ada utas tambahan yang akan dibuat oleh WARP dan semua
rasterisasi akan terjadi pada utas panggilan. Bendera ini tidak disarankan untuk penggunaan umum. Lihat komentar.
D3D10_CREATE_DEVICE_ALLOW_NULL_FROM_MAP
Nilai: 0x10
Mengembalikan penunjuk NULL alih-alih memicu pengecualian pada kelelahan memori selama pemanggilan ke Peta.
Tanpa bendera ini, pengecualian akan dinaikkan pada kelelahan memori. Hanya berlaku pada Windows 7.
D3D10_CREATE_DEVICE_BGRA_SUPPORT
Nilai: 0x20
Menyebabkan pembuatan perangkat gagal jika dukungan BGRA tidak tersedia.

Dukungan BGRA memungkinkan format berikut.


  • DXGI_FORMAT_B8G8R8A8_TYPELESS

  • DXGI_FORMAT_B8G8R8A8_UNORM

  • DXGI_FORMAT_B8G8R8A8_UNORM_SRGB

  • DXGI_FORMAT_B8G8R8X8_TYPELESS

  • DXGI_FORMAT_B8G8R8X8_UNORM

  • DXGI_FORMAT_B8G8R8X8_UNORM_SRGB


D3D10_CREATE_DEVICE_BGRA_SUPPORT hanya relevan saat perangkat dibuat dengan D3D10CreateDevice1
atau D3D10CreateDeviceAndSwapChain1 menggunakan D3D10_FEATURE_LEVEL_10_0 atau D3D10_FEATURE_LEVEL_10_1
tingkat fitur, bendera akan diabaikan saat perangkat dibuat dengan tingkat fitur lainnya.

Perhatikan bahwa dukungan BGRA mungkin ada meskipun aplikasi tidak menentukan D3D10_CREATE_DEVICE_BGRA_SUPPORT.
Bendera hanya menyebabkan pembuatan perangkat gagal jika dukungan BGRA tidak tersedia.

D3D10_CREATE_DEVICE_BGRA_SUPPORT hanya berlaku pada sistem Windows 7, Windows Server 2008 R2, dan Windows Vista (KB971644) yang diperbarui.
D3D10_CREATE_DEVICE_PREVENT_ALTERING_LAYER_SETTINGS_FROM_REGISTRY
Nilai: 0x80
Menyebabkan runtime Direct3D mengabaikan pengaturan registri yang mengaktifkan lapisan debug. Anda dapat mengaktifkan lapisan debug dengan menggunakan Panel Kontrol DirectX yang disertakan sebagai bagian dari DirectX SDK. Kami mengirimkan versi terakhir DirectX SDK pada Juni 2010; Anda dapat mengunduhnya dari Pusat Unduhan Microsoft. Anda dapat mengatur bendera ini di aplikasi Anda, biasanya hanya dalam build rilis, untuk mencegah pengguna akhir menggunakan Panel Kontrol DirectX untuk memantau cara aplikasi menggunakan Direct3D.

Catatan Anda juga dapat mengatur bendera ini di aplikasi untuk mencegah alat penelusuran kesalahan Direct3D, seperti Visual Studio Ultimate 2012, agar tidak menghubungkan aplikasi Anda.

 

Windows 8.1: Bendera ini tidak mencegah Visual Studio 2013 dan yang lebih baru berjalan di Windows 8.1 dan yang lebih baru agar tidak menghubungkan aplikasi Anda. Namun, bendera ini masih mencegah Visual Studio 2013 dan yang lebih baru berjalan di Windows 8 dan yang lebih lama dari menghubungkan aplikasi Anda.

Direct3D 11: Nilai ini tidak didukung hingga Direct3D 11.1.
D3D10_CREATE_DEVICE_STRICT_VALIDATION
Nilai: 0x200
Dicadangkan. Bendera ini saat ini tidak didukung. Jangan gunakan.
D3D10_CREATE_DEVICE_DEBUGGABLE
Nilai: 0x400
Menyebabkan perangkat dan driver menyimpan informasi yang dapat Anda gunakan untuk penelusuran kesalahan shader. Dampak pasti dari bendera ini akan bervariasi dari driver ke driver. Untuk menggunakan bendera ini, Anda harus menginstal D3D11_1SDKLayers.dll; jika tidak, pembuatan perangkat gagal. Perangkat yang dibuat mendukung lapisan debug. Untuk mendapatkan D3D11_1SDKLayers.dll, Anda harus menginstal SDK untuk Windows 8.

Direct3D 11: Nilai ini tidak didukung hingga Direct3D 11.1.

Keterangan

Bendera pembuatan perangkat digunakan oleh D3D10CreateDevice dan D3D10CreateDeviceAndSwapChain.

Aplikasi mungkin secara dinamis membuat (dan menghancurkan) utas untuk meningkatkan performa terutama pada komputer dengan beberapa inti CPU. Namun, mungkin ada kasus ketika aplikasi perlu mencegah utas tambahan dibuat. Ini dapat terjadi ketika Anda ingin menyederhanakan penelusuran kesalahan, kode profil, atau mengembangkan alat misalnya. Untuk kasus ini, gunakan D3D10_CREATE_DEVICE_PREVENT_INTERNAL_THREADING_OPTIMIZATIONS untuk meminta agar runtime dan driver video tidak membuat utas tambahan yang mungkin mengganggu aplikasi.

Persyaratan

Persyaratan Nilai
Header d3d10.h

Lihat juga

Enumerasi Inti