D3DERR
The following is a list of the values that can be returned by Direct3D methods. See the individual method descriptions for lists of the values that each can return.
Constant | Description |
---|---|
|
This is a success code. However, the autogeneration of mipmaps is not supported for this format. This means that resource creation will succeed but the mipmap levels will not be automatically generated. |
|
The currently set render states cannot be used together. |
|
The current texture filters cannot be used together. |
|
The current textures cannot be used simultaneously. |
|
The device that returned this code caused the hardware adapter to be reset by the OS. Most applications should destroy the device and quit. Applications that must continue should destroy all video memory objects (surfaces, textures, state blocks etc) and call Reset() to put the device in a default state. If the application then continues rendering in the same way, the device will return to this state. Applies to Direct3D 9Ex only. |
|
The device has been lost but cannot be reset at this time. Therefore, rendering is not possible. A Direct3D device object other than the one that returned this code caused the hardware adapter to be reset by the OS. Delete all video memory objects (surfaces, textures, state blocks) and call Reset() to return the device to a default state. If the application continues rendering without a reset, the rendering calls will succeed. |
|
The device has been lost but can be reset at this time. |
|
The hardware adapter has been removed. Application must destroy the device, do enumeration of adapters and create another Direct3D device. If application continues rendering without calling Reset, the rendering calls will succeed. Applies to Direct3D 9Ex only. |
|
Internal driver error. Applications should destroy and recreate the device when receiving this error. For hints on debugging this error, see Driver Internal Errors (Direct3D 9). |
|
Not used. |
|
The method call is invalid. For example, a method's parameter may not be a valid pointer. |
|
The requested device type is not valid. |
|
There is more data available than the specified buffer size can hold. |
|
This device does not support the queried technique. |
|
The requested item was not found. |
|
No error occurred. |
|
Direct3D does not have enough display memory to perform the operation. The device is using more resources in a single scene than can fit simultaneously into video memory. Present, PresentEx, or CheckDeviceState can return this error. Recovery is similar to D3DERR_DEVICEHUNG, though the application may want to reduce its per-frame memory usage as well to avoid having the error recur. |
|
The application is requesting more texture-filtering operations than the device supports. |
|
The device does not support a specified texture-blending argument for the alpha channel. |
|
The device does not support a specified texture-blending operation for the alpha channel. |
|
The device does not support a specified texture-blending argument for color values. |
|
The device does not support a specified texture-blending operation for color values. |
|
The device does not support the specified texture factor value. Not used; provided only to support older drivers. |
|
The device does not support the specified texture filter. |
|
The previous blit operation that is transferring information to or from this surface is incomplete. |
|
The pixel format of the texture surface is not valid. |
|
An undetermined error occurred inside the Direct3D subsystem. |
|
An invalid parameter was passed to the returning function. |
|
The method call is invalid. For example, a method's parameter may have an invalid value. |
|
No object interface is available. |
|
Not implemented. |
|
Direct3D could not allocate sufficient memory to complete the call. |
|
No error occurred. |
|
At least one allocation that comprises the resources is on disk. Direct3D 9Ex only. |
|
No allocations that comprise the resources are on disk. However, at least one allocation is not in GPU-accessible memory. Direct3D 9Ex only. |
|
The desktop display mode has been changed. The application can continue rendering, but there might be color conversion/stretching. Pick a back buffer format similar to the current display mode, and call Reset to recreate the swap chains. The device will leave this state after a Reset is called. Direct3D 9Ex only. |
|
The presentation area is occluded. Occlusion means that the presentation window is minimized or another device entered the fullscreen mode on the same monitor as the presentation window and the presentation window is completely on that monitor. Occlusion will not occur if the client area is covered by another Window. Occluded applications can continue rendering and all calls will succeed, but the occluded presentation window will not be updated. Preferably the application should stop rendering to the presentation window using the device and keep calling CheckDeviceState until S_OK or S_PRESENT_MODE_CHANGED returns. Direct3D 9Ex only. |
|
The device does not support overlay for the specified size or display mode. Direct3D 9Ex under Windows 7 only. |
|
The device does not support overlay for the specified surface format. Direct3D 9Ex under Windows 7 only. |
|
The specified content cannot be protected. Direct3D 9Ex under Windows 7 only. |
|
The specified cryptographic algorithm is not supported. Direct3D 9Ex under Windows 7 only. |
|
The present statistics have no orderly sequence. Direct3D 9Ex under Windows 7 only. |
Remarks
Errors are represented by negative values and cannot be combined.
Other return codes are contained in S_PRESENT.
The facility code _FACD3D is used to generate error codes, as in the following macros.
// Direct3D Errors
#define D3DERR_UNSUPPORTEDFACTORVALUE MAKE_D3DHRESULT(2079)
#define D3DERR_WASSTILLDRAWING MAKE_D3DHRESULT(540)
#define _FACD3D 0x876 // Direct3D facility code
#define MAKE_D3DHRESULT( code ) MAKE_HRESULT( 1, _FACD3D, code )
#define MAKE_D3DSTATUS( code ) MAKE_HRESULT( 0, _FACD3D, code )
Requirements
Requirement | Value |
---|---|
Header |
|
See also