CreateFlags Enumeration (Microsoft.DirectX.Direct3D)

Defines the flags to use when creating a device.


Visual BasicPublic Enum CreateFlags
C#public enum CreateFlags
C++public enum class CreateFlags
JScriptpublic enum CreateFlags


NoWindowChanges2048Indicates to the Microsoft Direct3D runtime not to alter the focus window in any way. Use with caution! The burden of supporting focus management events (ALT-TAB, and so on) falls on the application, and appropriate responses (switching display mode, and so on) should be coded.
DisableDriverManagementEx1024Specifies that resources be managed by Direct3D instead of the driver. Direct3D calls will fail for resource errors such as insufficient video memory.
AdapterGroupDevice512The application requests that the device drive all heads that the master adapter owns (this flag is illegal on nonmaster adapters). If the flag is set, the presentation parameters passed to Device should be an array of PresentParameters that contains exactly NumberOfAdaptersInGroup elements. The runtime assigns each element to each head in AdapterOrdinalInGroup numeric order.
DisableDriverManagement256Specifies that resources be managed by Direct3D instead of the driver. Direct3D calls will not fail for resource errors such as insufficient video memory.
MixedVertexProcessing128Specifies mixed vertex processing (both software and hardware).
HardwareVertexProcessing64Specifies hardware vertex processing.
SoftwareVertexProcessing32Specifies software vertex processing.
PureDevice16Specifies that Direct3D not support Get calls for anything that can be stored in a state block. Also instructs Direct3D to withhold emulation services for vertex processing, which means that if the device does not support vertex processing, the application can use only post-transformed vertices.
MultiThreaded4Indicates that the application requested multithread safety in Direct3D. This causes Direct3D to check its global critical section more frequently, which can degrade performance. Starting in the Microsoft DirectX 9.0 SDK Update (Summer 2003), this enumerated value is always specified unless the PresentParameters.ForceNoMultiThreadedFlag is set to true.
FpuPreserve2Indicates that the application needs either floating-point unit (FPU) exceptions or double-precision FPU exceptions enabled. By default, Direct3D uses single precision.

Because Direct3D sets the FPU state every time it is called, setting this flag reduces Direct3D performance.


This enumeration is used by the Device constructor. The HardwareVertexProcessing, MixedVertexProcessing, and SoftwareVertexProcessing constants are mutually exclusive. One of them must be specified during creation of a device.

Enumeration Information

AssemblyMicrosoft.DirectX.Direct3D (microsoft.directx.direct3d.dll)
Strong NameMicrosoft.DirectX.Direct3D,  Version=1.0.900.0,  Culture=neutral,  PublicKeyToken=d3231b57b74a1492

See Also