Megosztás a következőn keresztül:


D3DCREATE

Az eszköz létrehozási viselkedését vezérlő egy vagy több jelző kombinációja.

#define Leírás
D3DCREATE_ADAPTERGROUP_DEVICE Az alkalmazás arra kéri az eszközt, hogy vezesse az összes fejet, amelyet ez a főadapter birtokol. A jelző érvénytelen a nem mesteradaptereken. Ha ez a jelző be van állítva, a CreateDeviceátadott bemutatóparamétereknek D3DPRESENT_PARAMETERStömbjére kell mutatniuk. A D3DPRESENT_PARAMETERS elemeinek száma megegyezik a D3DCAPS9-struktúra NumberOfAdaptersInGroup tagjának által meghatározott adapterek számával. A DirectX-futtatókörnyezet minden egyes elemet hozzárendel az egyes fejekhez a D3DCAPS9AdapterOrdinalInGroup tagja által megadott numerikus sorrendben.
D3DCREATE_DISABLE_DRIVER_MANAGEMENT A Direct3D az illesztőprogram helyett az erőforrásokat kezeli. A Direct3D-hívások nem fognak meghiúsulni olyan erőforráshibák esetén, mint például az elégtelen videomemória.
D3DCREATE_DISABLE_DRIVER_MANAGEMENT_EX Az D3DCREATE_DISABLE_DRIVER_MANAGEMENT-hez hasonlóan a Direct3D is az illesztőprogram helyett az erőforrásokat kezeli. A D3DCREATE_DISABLE_DRIVER_MANAGEMENT ellentétben a D3DCREATE_DISABLE_DRIVER_MANAGEMENT_EX olyan feltételek hibáit adja vissza, mint például az elégtelen videomemória.
D3DCREATE_DISABLE_PRINTSCREEN A futtatókörnyezet nem regisztrál gyorsbillentyűket a Printscreenhez, Ctrl-Printscreen és Alt-Printscreen az asztal vagy az ablak tartalmának rögzítéséhez.
A Direct3D 9 és a Direct3D 9Ex közötti különbségek:
Ez a jelző csak a Direct3D 9Ex-ben érhető el.

 

D3DCREATE_DISABLE_PSGP_THREADING A számítás korlátozása a fő alkalmazásszálra. Ha a jelző nincs beállítva, a futtatókörnyezet szoftveres csúcspont-feldolgozást és egyéb számításokat végezhet a feldolgozó szálon a többprocesszoros rendszerek teljesítményének javítása érdekében.
A Windows XP és a Windows Vista közötti különbségek:
Ez a jelző Windows Vista, Windows Server 2008 és Windows 7 rendszeren érhető el.

 

D3DCREATE_ENABLE_PRESENTSTATS Lehetővé teszi a jelenlegi statisztikák gyűjtését az eszközön. A GetPresentStatisticshívásai érvényes adatokat adnak vissza.
A Direct3D 9 és a Direct3D 9Ex közötti különbségek:
Ez a jelző csak a Direct3D 9Ex-ben érhető el.

 

D3DCREATE_FPU_PRESERVE Állítsa be a Direct3D lebegőpontos számítások pontosságát a hívószál által használt pontosságra. Ha nem adja meg ezt a jelzőt, a Direct3D két okból alapértelmezés szerint egy pontosságú kerekítési módba kerül:
  • A dupla pontosságú mód csökkenti a Direct3D teljesítményét.
  • A Direct3D egyes részei feltételezik, hogy a lebegőpontos egységek kivételei maszkoltak; A kivételek maszkolásának megszüntetése nem definiált viselkedést eredményezhet.
D3DCREATE_HARDWARE_VERTEXPROCESSING Megadja a hardver csúcsának feldolgozását.
D3DCREATE_MIXED_VERTEXPROCESSING Vegyes (szoftveres és hardveres) csúcsfeldolgozást ad meg. A Windows 10 1607-es és újabb verziói esetében ez a beállítás nem ajánlott. Lásd: D3DCREATE_SOFTWARE_VERTEXPROCESSING.
D3DCREATE_SOFTWARE_VERTEXPROCESSING A szoftver csúcsának feldolgozását adja meg. A Windows 10 1607-es és újabb verziói esetében ez a beállítás nem ajánlott. Használja D3DCREATE_HARDWARE_VERTEXPROCESSING.

megjegyzés:
Hacsak nem érhető el hardveres csúcspont-feldolgozás, a szoftveres csúcspont-feldolgozás használata nem ajánlott a Windows 10 1607-es (és újabb verzióiban), mert a szoftveres csúcspontok feldolgozásának hatékonysága jelentősen csökkent, miközben javult a megvalósítás biztonsága.

 
D3DCREATE_MULTITHREADED Azt jelzi, hogy az alkalmazás a Direct3D-t többszálú biztonságra kéri. Így a Direct3D-szálak gyakrabban veszik át a globális kritikus szakaszát, ami ronthatja a teljesítményt. Ha egy alkalmazás egy szálon dolgozza fel az ablaküzeneteket, miközben Direct3D API-hívásokat indít egy másikban, az alkalmazásnak ezt a jelzőt kell használnia az eszköz létrehozásakor. Ezt az ablakot a d3d9.dllkipakolása előtt is meg kell semmisíteni.
D3DCREATE_NOWINDOWCHANGES Azt jelzi, hogy a Direct3D semmilyen módon nem módosíthatja a fókuszablakot.

megjegyzés:
Ha ez a jelző be van állítva, az alkalmazásnak teljes mértékben támogatnia kell az összes fókuszkezelési eseményt, például az ALT+TAB billentyűkombinációt és az egérkattintásos eseményeket.

 
D3DCREATE_PUREDEVICE Megadja, hogy a Direct3D nem támogatja a Get* hívásokat az állapotblokkokban tárolhatókhoz. Azt is jelzi a Direct3D-nek, hogy ne biztosítson emulációs szolgáltatásokat a csúcsok feldolgozásához. Ez azt jelenti, hogy ha az eszköz nem támogatja a csúcsok feldolgozását, akkor az alkalmazás csak az átalakított csúcsokat használhatja.
D3DCREATE_SCREENSAVER Lehetővé teszi a képernyővédők használatát teljes képernyős alkalmazásokban. E jelző nélkül a Direct3D mindaddig letiltja a képernyővédőket, amíg a hívó alkalmazás teljes képernyős. Ha a hívó alkalmazás már képernyővédő, ennek a jelölőnek nincs hatása.
A Direct3D 9 és a Direct3D 9Ex közötti különbségek:
Ez a jelző csak a Direct3D 9Ex-ben érhető el.

 

 

D3DCREATE_HARDWARE_VERTEXPROCESSING, D3DCREATE_MIXED_VERTEXPROCESSING és D3DCREATE_SOFTWARE_VERTEXPROCESSING kölcsönösen kizáró zászlók. A CreateDevice hívásához legalább egy csúcspont-feldolgozási jelzőt meg kell adni.

Állandó információ

Követelmény Érték
Fejléc D3D9.h
Minimális operációs rendszer Windows 98

 

Direct3D-konstansok