D3D10_CREATE_DEVICE_FLAG-Enumeration (d3d10.h)

Geräteerstellungsflags.

Syntax

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
} ;

Konstanten

 
D3D10_CREATE_DEVICE_SINGLETHREADED
Wert: 0x1
Verwenden Sie dieses Flag, wenn eine Anwendung D3D10 nur aus einem einzelnen Thread aufruft. Wenn dieses Flag nicht angegeben ist, wird das Standardverhalten von D3D10 verwendet.
gibt während jedes API-Aufrufs eine Sperre ein, um zu verhindern, dass mehrere Threads den internen Zustand ändern. Durch Die Verwendung dieses Flags werden keine Sperren genommen, die
die Leistung leicht zu erhöhen, kann jedoch zu einem Nichtwirkungsverhalten führen, wenn D3D10 von mehreren Threads aufgerufen wird.
D3D10_CREATE_DEVICE_DEBUG
Wert: 0x2
Erstellen Sie ein Gerät, das die Debugebene unterstützt.
D3D10_CREATE_DEVICE_SWITCH_TO_REF
Wert: 0x4
Erstellen Sie gleichzeitig eine Softwareversion (REF) und eine Hardwareversion (HAL), die es einer Anwendung ermöglicht, zu einem zu wechseln.
Verweisen Sie auf das Gerät, um das Debuggen zu aktivieren. Weitere Informationen finden Sie unter ID3D10SwitchToRef-Schnittstelle .
D3D10_CREATE_DEVICE_PREVENT_INTERNAL_THREADING_OPTIMIZATIONS
Wert: 0x8
Verhindert, dass mehrere Threads erstellt werden. Wenn dieses Flag mit einem WARP-Gerät verwendet wird, werden keine zusätzlichen Threads von WARP und allen
die Rasterisierung erfolgt im aufrufenden Thread. Dieses Flag wird für die allgemeine Verwendung nicht empfohlen. Siehe Bemerkungen.
D3D10_CREATE_DEVICE_ALLOW_NULL_FROM_MAP
Wert: 0x10
Gibt einen NULL-Zeiger zurück, anstatt eine Ausnahme bei der Speicherauslastung beim Aufruf von Zuordnung auszulösen.
Ohne dieses Flag wird bei der Speicherauslastung eine Ausnahme ausgelöst. Nur unter Windows 7 gültig.
D3D10_CREATE_DEVICE_BGRA_SUPPORT
Wert: 0x20
Führt dazu, dass die Geräteerstellung fehlschlägt, wenn die BGRA-Unterstützung nicht verfügbar ist.

Die BGRA-Unterstützung ermöglicht die folgenden Formate.


  • 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 ist nur relevant, wenn ein Gerät mit D3D10CreateDevice1 erstellt wird.
oder D3D10CreateDeviceAndSwapChain1 mit dem D3D10_FEATURE_LEVEL_10_0 oder D3D10_FEATURE_LEVEL_10_1
Featureebenen: Das Flag wird ignoriert, wenn ein Gerät mit anderen Featureebenen erstellt wird.

Beachten Sie, dass BGRA-Unterstützung auch dann vorhanden sein kann, wenn die Anwendung keine D3D10_CREATE_DEVICE_BGRA_SUPPORT angegeben hat.
Das Flag führt lediglich dazu, dass die Geräteerstellung fehlschlägt, wenn keine BGRA-Unterstützung verfügbar ist.

D3D10_CREATE_DEVICE_BGRA_SUPPORT ist nur auf Windows 7-, Windows Server 2008 R2- und aktualisierten Windows Vista-Systemen (KB971644) gültig.
D3D10_CREATE_DEVICE_PREVENT_ALTERING_LAYER_SETTINGS_FROM_REGISTRY
Wert: 0x80
Bewirkt, dass die Direct3D-Runtime Registrierungseinstellungen ignoriert, die die Debugebene aktivieren. Sie können die Debugebene mithilfe der DirectX-Systemsteuerung aktivieren, die im DirectX SDK enthalten war. Die letzte Version des DirectX SDK wurde im Juni 2010 ausgeliefert. Sie können es aus dem Microsoft Download Center herunterladen. Sie können dieses Flag in Ihrer App festlegen, in der Regel nur in Releasebuilds, um zu verhindern, dass Endbenutzer die DirectX-Systemsteuerung verwenden, um zu überwachen, wie die App Direct3D verwendet.

Hinweis Sie können dieses Flag auch in Ihrer App festlegen, um zu verhindern, dass Direct3D-Debugtools wie Visual Studio Ultimate 2012 Ihre App einbinden.

 

Windows 8.1: Dieses Flag verhindert nicht, dass Visual Studio 2013 und später auf Windows 8.1 und höher ausgeführt wird, ihre App einhaken. Dieses Flag verhindert jedoch weiterhin, dass Visual Studio 2013 und später, die auf Windows 8 und früheren Versionen ausgeführt werden, Ihre App einbinden.

Direct3D 11: Dieser Wert wird erst in Direct3D 11.1 unterstützt.
D3D10_CREATE_DEVICE_STRICT_VALIDATION
Wert: 0x200
Reserviert. Dieses Flag wird derzeit nicht unterstützt. Nicht verwenden.
D3D10_CREATE_DEVICE_DEBUGGABLE
Wert: 0x400
Bewirkt, dass das Gerät und der Treiber Informationen beibehalten, die Sie für das Debuggen von Shadern verwenden können. Die genauen Auswirkungen dieses Flags variieren von Treiber zu Treiber. Um dieses Flag verwenden zu können, muss D3D11_1SDKLayers.dll installiert sein. Andernfalls schlägt die Geräteerstellung fehl. Das erstellte Gerät unterstützt die Debugebene. Um D3D11_1SDKLayers.dll zu erhalten, müssen Sie das SDK für Windows 8 installieren.

Direct3D 11: Dieser Wert wird erst in Direct3D 11.1 unterstützt.

Hinweise

Geräteerstellungsflags werden von D3D10CreateDevice und D3D10CreateDeviceAndSwapChain verwendet.

Eine Anwendung kann dynamisch Threads erstellen (und zerstören), um die Leistung insbesondere auf einem Computer mit mehreren CPU-Kernen zu verbessern. Es kann jedoch vorkommen, dass eine Anwendung verhindern muss, dass zusätzliche Threads erstellt werden. Dies kann der Fall sein, wenn Sie das Debuggen vereinfachen, Code profilieren oder ein Tool für instance entwickeln möchten. Verwenden Sie in diesen Fällen D3D10_CREATE_DEVICE_PREVENT_INTERNAL_THREADING_OPTIMIZATIONS, um anzufordern, dass die Laufzeit und der Videotreiber keine zusätzlichen Threads erstellen, die die Anwendung beeinträchtigen könnten.

Anforderungen

Anforderung Wert
Header d3d10.h

Weitere Informationen

Kernaufzählungen