A combination of one or more flags that control the device create behavior.
|D3DCREATE_FPU_PRESERVE||Indicates that the application needs either double-precision floating-point unit (FPU) or FPU exceptions enabled. Microsoft?Direct3D?sets the FPU state each time it is called.
By default, the pipeline uses single precision. Be sure to use this flag to get double precision. Setting the flag will reduce Direct3D performance.
|D3DCREATE_MULTITHREADED||Indicates that the application requests Direct3D to be multithread safe. This makes Direct3D take its global critical section more frequently, which can degrade performance.|
|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_HARDWARE_VERTEXPROCESSING||Specifies hardware vertex processing.|
|D3DCREATE_SOFTWARE_VERTEXPROCESSING||Specifies software vertex processing.|
|D3DCREATE_MIXED_VERTEXPROCESSING||Specifies mixed (both software and hardware) vertex processing.|
|D3DCREATE_DISABLE_DRIVER_MANAGEMENT||Specifies that Direct3D should manage resources instead of the driver.|
|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. There should be the same as the number in NumberOfAdaptersInGroup elements in this array, and the runtime will assign each element to each head in AdapterOrdinalInGroup numerical order.|
|D3DCREATE_MANAGED||Device in which all resources are swapped between accelerator-accessible memory and system memory as needed. A managed device frees the application from memory management chores.|
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.
|Minimum operating system||Windows 98|