D3DCREATE

Cihaz oluşturma davranışını denetleen bir veya daha fazla bayrağın birleşimi.

#define Açıklama
D3DCREATE_ADAPTERGROUP_DEVICE Uygulama, cihazdan bu ana bağdaştırıcının sahip olduğu tüm kafaları sürmesini ister. Bayrağı, yönetici olmayan bağdaştırıcılarda geçersizdir. Bu bayrak ayarlanırsa, CreateDevice geçirilen sunu parametreleri bir D3DPRESENT_PARAMETERSdizisine işaret etmelidir. D3DPRESENT_PARAMETERS öğe sayısı, D3DCAPS9 yapısının NumberOfAdaptersInGroup üyesi tarafından tanımlanan bağdaştırıcı sayısına eşit olmalıdır. DirectX çalışma zamanı, her bir öğeyi D3DCAPS9AdapterOrdinalInGroup üyesi tarafından belirtilen sayısal sırada her baş öğesine atar.
D3DCREATE_DISABLE_DRIVER_MANAGEMENT Direct3D, kaynakları sürücü yerine yönetir. Yetersiz video belleği gibi kaynak hataları için Direct3D çağrıları başarısız olmaz.
D3DCREATE_DISABLE_DRIVER_MANAGEMENT_EX D3DCREATE_DISABLE_DRIVER_MANAGEMENT gibi Direct3D de kaynakları sürücü yerine yönetir. D3DCREATE_DISABLE_DRIVER_MANAGEMENT aksine, D3DCREATE_DISABLE_DRIVER_MANAGEMENT_EX yetersiz video belleği gibi koşullar için hatalar döndürür.
D3DCREATE_DISABLE_PRINTSCREEN Çalışma zamanının masaüstü veya pencere içeriğini yakalamak için Printscreen, Ctrl-Printscreen ve Alt-Printscreen kısayol tuşlarını kaydetmemelerine neden olur.
Direct3D 9 ile Direct3D 9Ex arasındaki farklar:
Bu bayrak yalnızca Direct3D 9Ex'te kullanılabilir.

 

D3DCREATE_DISABLE_PSGP_THREADING Hesaplamayı ana uygulama iş parçacığıyla kısıtlayın. Bayrak ayarlanmadıysa, çalışma zamanı çok işlemcili sistemlerde performansı geliştirmek için çalışan iş parçacığında yazılım köşesi işleme ve diğer hesaplamalar gerçekleştirebilir.
Windows XP ile Windows Vista arasındaki farklar:
Bu bayrak Windows Vista, Windows Server 2008 ve Windows 7'de kullanılabilir.

 

D3DCREATE_ENABLE_PRESENTSTATS Cihazda mevcut istatistiklerin toplanmasını sağlar. GetPresentStatistics çağrıları geçerli veriler döndürür.
Direct3D 9 ile Direct3D 9Ex arasındaki farklar:
Bu bayrak yalnızca Direct3D 9Ex'te kullanılabilir.

 

D3DCREATE_FPU_PRESERVE Direct3D kayan nokta hesaplamaları için duyarlığı çağıran iş parçacığı tarafından kullanılan duyarlık olarak ayarlayın. Bu bayrağı belirtmezseniz, Direct3D iki nedenden dolayı varsayılan olarak tek duyarlıklı en yakın moda yuvarlar:
  • Çift duyarlık modu Direct3D performansını azaltır.
  • Direct3D'nin bazı bölümleri kayan nokta birimi özel durumlarının maskelendiğini varsayar; bu özel durumların maskesini kaldırma tanımsız davranışa neden olabilir.
D3DCREATE_HARDWARE_VERTEXPROCESSING Donanım köşesi işlemeyi belirtir.
D3DCREATE_MIXED_VERTEXPROCESSING Karma (hem yazılım hem de donanım) köşe işlemeyi belirtir. Windows 10, sürüm 1607 ve üzeri için bu ayarın kullanılması önerilmez. bkz. D3DCREATE_SOFTWARE_VERTEXPROCESSING.
D3DCREATE_SOFTWARE_VERTEXPROCESSING Yazılım köşesi işlemeyi belirtir. Windows 10, sürüm 1607 ve üzeri için bu ayarın kullanılması önerilmez. D3DCREATE_HARDWARE_VERTEXPROCESSING kullanın.

Not:
Donanım köşesi işleme kullanılamadığı sürece, windows 10, sürüm 1607 'de (ve sonraki sürümlerde) yazılım köşesi işlemenin kullanılması önerilmez, çünkü yazılım köşesi işlemenin verimliliği önemli ölçüde azaltılırken uygulamanın güvenliği de iyileştirilir.

 
D3DCREATE_MULTITHREADED Uygulamanın Direct3D'nin çok iş parçacıklı güvenli olmasını istemesini gösterir. Bu, Direct3D iş parçacığının genel kritik bölümünün sahipliğini daha sık ve performansı düşürebilir. Uygulama, başka bir iş parçacığında Direct3D API çağrıları yaparken pencere iletilerini işliyorsa, cihaz oluşturulurken uygulamanın bu bayrağı kullanması gerekir. d3d9.dllkaldırılmadan önce bu pencerenin de yok edilmesi gerekir.
D3DCREATE_NOWINDOWCHANGES Direct3D'nin odak penceresini hiçbir şekilde değiştirmemesi gerektiğini gösterir.

Not:
Bu bayrak ayarlanırsa, uygulamanın ALT+SEKME ve fare tıklama olayları gibi tüm odak yönetimi olaylarını tam olarak desteklemesi gerekir.

 
D3DCREATE_PUREDEVICE Direct3D'nin durum bloklarında depolanabilecek her şey için Get* çağrılarını desteklemediğini belirtir. Ayrıca Direct3D'ye köşe işleme için herhangi bir öykünme hizmeti sağlamamalarını söyler. Bu, cihaz köşe işlemeyi desteklemiyorsa uygulamanın yalnızca dönüştürülen köşeleri kullanabileceği anlamına gelir.
D3DCREATE_SCREENSAVER Tam ekran uygulaması sırasında ekran koruyuculara izin verir. Bu bayrak olmadan Direct3D, çağıran uygulama tam ekran olduğu sürece ekran koruyucuları devre dışı bırakır. Çağıran uygulama zaten bir ekran koruyucu ise, bu bayrağın hiçbir etkisi yoktur.
Direct3D 9 ile Direct3D 9Ex arasındaki farklar:
Bu bayrak yalnızca Direct3D 9Ex'te kullanılabilir.

 

 

D3DCREATE_HARDWARE_VERTEXPROCESSING, D3DCREATE_MIXED_VERTEXPROCESSING ve D3DCREATE_SOFTWARE_VERTEXPROCESSING birbirini dışlayan bayraklardır. CreateDeviceçağrılırken bu köşe işleme bayraklarından en az biri belirtilmelidir.

Sabit Bilgi

Gereksinim Değer
Üstbilgi D3D9.h
En düşük işletim sistemi Windows 98

 

Direct3D Sabitleri