D3DCREATE

A combination of one or more flags that control the device create behavior.

#define Description
D3DCREATE_ADAPTERGROUP_DEVICE Application asks the device to drive all the heads that this master adapter owns. The flag is illegal on nonmaster adapters. If this flag is set, the presentation parameters passed to IDirect3D9::CreateDevice should point to an array of D3DPRESENT_PARAMETERS. The number of elements in D3DPRESENT_PARAMETERS should equal the number of adapters defined by the NumberOfAdaptersInGroup member of the D3DCAPS9 structure. The DirectX runtime will assign each element to each head in the numerical order specified by the AdapterOrdinalInGroup member of D3DCAPS9.
D3DCREATE_DISABLE_DRIVER_MANAGEMENT Direct3D will manage resources instead of the driver. Direct3D calls will not fail for resource errors such as insufficient video memory.
D3DCREATE_DISABLE_DRIVER_MANAGEMENT_EX Like D3DCREATE_DISABLE_DRIVER_MANAGEMENT, Direct3D will manage resources instead of the driver. Unlike D3DCREATE_DISABLE_DRIVER_MANAGEMENT, D3DCREATE_DISABLE_DRIVER_MANAGEMENT_EX will return errors for conditions such as insufficient video memory.
D3DCREATE_FPU_PRESERVE Forces Direct3D to not change the floating-point unit control word, running the pipeline using the precision of the calling thread. Without this flag, Direct3D defaults to setting the floating-point unit to single-precision round-to-nearest mode. Using this flag with the floating-point unit in double-precision mode will reduce Direct3D performance.

Note    Portions of Direct3D assume floating-point unit exceptions are masked. Unmasking such exceptions may lead to undefined behavior.

D3DCREATE_HARDWARE_VERTEXPROCESSING Specifies hardware vertex processing.
D3DCREATE_MIXED_VERTEXPROCESSING Specifies mixed (both software and hardware) vertex processing.
D3DCREATE_MULTITHREADED Indicates that the application requests Direct3D to be multithread safe. This makes a Direct3D thread take ownership of its global critical section more frequently, which can degrade performance.
D3DCREATE_NOWINDOWCHANGES Indicates that Direct3D must not alter the focus window in any way.

Note    If this flag is set, the application must fully support all focus management events, such as ALT+TAB and mouse click events.

D3DCREATE_PUREDEVICE Specifies that Direct3D does not support Get* calls for anything that can be stored in state blocks. It also tells Direct3D not to provide any emulation services for vertex processing. This means that if the device does not support vertex processing, then the application can use only post-transformed vertices.
D3DCREATE_SCREENSAVER Allows screensavers during a fullscreen application. Without this flag, Direct3D will disable screensavers for as long as the calling application is fullscreen. If the calling application is already a screensaver, this flag has no effect.
D3DCREATE_SOFTWARE_VERTEXPROCESSING Specifies software vertex processing.

D3DCREATE_HARDWARE_VERTEXPROCESSING, D3DCREATE_MIXED_VERTEXPROCESSING, and D3DCREATE_SOFTWARE_VERTEXPROCESSING are mutually exclusive flags. At least one of these vertex processing flags must be specified when calling IDirect3D9::CreateDevice.

Constant Information

Header d3d9.h
Minimum operating system Windows 98