D3DERR

Veja a seguir uma lista dos valores que podem ser retornados pelos métodos Direct3D. Consulte as descrições de método individual para obter listas dos valores que cada um pode retornar.

Constante Descrição
D3DOK_NOAUTOGEN
Este é um código de sucesso. No entanto, não há suporte para a geração automática de mipmaps para esse formato. Isso significa que a criação de recursos terá êxito, mas os níveis de mipmap não serão gerados automaticamente.
D3DERR_CONFLICTINGRENDERSTATE
Os estados de renderização atualmente definidos não podem ser usados juntos.
D3DERR_CONFLICTINGTEXTUREFILTER
Os filtros de textura atuais não podem ser usados juntos.
D3DERR_CONFLICTINGTEXTUREPALETTE
As texturas atuais não podem ser usadas simultaneamente.
D3DERR_DEVICEHUNG
O dispositivo que retornou esse código fez com que o adaptador de hardware fosse redefinido pelo sistema operacional. A maioria dos aplicativos deve destruir o dispositivo e sair. Os aplicativos que devem continuar devem destruir todos os objetos de memória de vídeo (superfícies, texturas, blocos de estado etc.) e chamar Redefinir() para colocar o dispositivo em um estado padrão. Se o aplicativo continuar renderizando da mesma maneira, o dispositivo retornará a esse estado.
Aplica-se somente ao Direct3D 9Ex.
D3DERR_DEVICELOST
O dispositivo foi perdido, mas não pode ser redefinido no momento. Portanto, a renderização não é possível. Um objeto de dispositivo Direct3D diferente daquele que retornou esse código fez com que o adaptador de hardware fosse redefinido pelo sistema operacional. Exclua todos os objetos de memória de vídeo (superfícies, texturas, blocos de estado) e chame Reset() para retornar o dispositivo a um estado padrão. Se o aplicativo continuar renderizando sem redefinir, as chamadas de renderização terão êxito.
D3DERR_DEVICENOTRESET
O dispositivo foi perdido, mas pode ser redefinido no momento.
D3DERR_DEVICEREMOVED
O adaptador de hardware foi removido. O aplicativo deve destruir o dispositivo, fazer enumeração de adaptadores e criar outro dispositivo Direct3D. Se o aplicativo continuar renderizando sem chamar Redefinir, as chamadas de renderização terão êxito.
Aplica-se somente ao Direct3D 9Ex.
D3DERR_DRIVERINTERNALERROR
Erro interno do driver. Os aplicativos devem destruir e recriar o dispositivo ao receber esse erro. Para obter dicas sobre como depurar esse erro, consulte Erros Internos do Driver (Direct3D 9).
D3DERR_DRIVERINVALIDCALL
Não usado.
D3DERR_INVALIDCALL
A chamada do método é inválida. Por exemplo, o parâmetro de um método pode não ser um ponteiro válido.
D3DERR_INVALIDDEVICE
O tipo de dispositivo solicitado não é válido.
D3DERR_MOREDATA
Há mais dados disponíveis do que o tamanho do buffer especificado pode conter.
D3DERR_NOTAVAILABLE
Esse dispositivo não dá suporte à técnica consultada.
D3DERR_NOTFOUND
O item solicitado não foi encontrado.
D3D_OK
Não ocorreu nenhum erro.
D3DERR_OUTOFVIDEOMEMORY
O Direct3D não tem memória de exibição suficiente para executar a operação. O dispositivo está usando mais recursos em uma única cena do que pode caber simultaneamente na memória de vídeo. Presente, PresentEx ou CheckDeviceState podem retornar esse erro. A recuperação é semelhante a D3DERR_DEVICEHUNG, embora o aplicativo queira reduzir seu uso de memória por quadro também para evitar que o erro se repita.
D3DERR_TOOMANYOPERATIONS
O aplicativo está solicitando mais operações de filtragem de textura do que o dispositivo dá suporte.
D3DERR_UNSUPPORTEDALPHAARG
O dispositivo não dá suporte a um argumento de combinação de textura especificado para o canal alfa.
D3DERR_UNSUPPORTEDALPHAOPERATION
O dispositivo não dá suporte a uma operação de combinação de textura especificada para o canal alfa.
D3DERR_UNSUPPORTEDCOLORARG
O dispositivo não dá suporte a um argumento de combinação de textura especificado para valores de cor.
D3DERR_UNSUPPORTEDCOLOROPERATION
O dispositivo não dá suporte a uma operação de combinação de textura especificada para valores de cor.
D3DERR_UNSUPPORTEDFACTORVALUE
O dispositivo não dá suporte ao valor do fator de textura especificado. Não usado; fornecido apenas para dar suporte a drivers mais antigos.
D3DERR_UNSUPPORTEDTEXTUREFILTER
O dispositivo não dá suporte ao filtro de textura especificado.
D3DERR_WASSTILLDRAWING
A operação blit anterior que está transferindo informações para ou dessa superfície está incompleta.
D3DERR_WRONGTEXTUREFORMAT
O formato de pixel da superfície de textura não é válido.
E_FAIL
Ocorreu um erro indeterminado dentro do subsistema Direct3D.
E_INVALIDARG
Um parâmetro inválido foi passado para a função retornada.
E_INVALIDCALL
A chamada do método é inválida. Por exemplo, o parâmetro de um método pode ter um valor inválido.
E_NOINTERFACE
Nenhuma interface de objeto está disponível.
E_NOTIMPL
Não implementado.
E_OUTOFMEMORY
O Direct3D não pôde alocar memória suficiente para concluir a chamada.
S_OK
Não ocorreu nenhum erro.
S_NOT_RESIDENT
Pelo menos uma alocação que compreende os recursos está no disco. Somente Direct3D 9Ex.
S_RESIDENT_IN_SHARED_MEMORY
Nenhuma alocação que inclua os recursos está no disco. No entanto, pelo menos uma alocação não está na memória acessível para GPU. Somente Direct3D 9Ex.
S_PRESENT_MODE_CHANGED
O modo de exibição da área de trabalho foi alterado. O aplicativo pode continuar renderizando, mas pode haver conversão/alongamento de cores. Escolha um formato de buffer traseiro semelhante ao modo de exibição atual e chame Redefinir para recriar as cadeias de troca. O dispositivo deixará esse estado depois que uma redefinição for chamada. Somente Direct3D 9Ex.
S_PRESENT_OCCLUDED
A área de apresentação é occluded. A oclusão significa que a janela de apresentação é minimizada ou outro dispositivo entrou no modo de tela inteira no mesmo monitor que a janela de apresentação e a janela de apresentação está completamente no monitor. A oclusão não ocorrerá se a área do cliente for coberta por outra janela.
Os aplicativos occluded podem continuar a renderização e todas as chamadas serão bem-sucedidas, mas a janela de apresentação occluded não será atualizada. Preferencialmente, o aplicativo deve parar de renderizar para a janela de apresentação usando o dispositivo e continuar chamando CheckDeviceState até que S_OK ou S_PRESENT_MODE_CHANGED retorne.
Somente Direct3D 9Ex.
D3DERR_UNSUPPORTEDOVERLAY
O dispositivo não dá suporte à sobreposição para o tamanho ou modo de exibição especificado.
Direct3D 9Ex em apenas Windows 7.
D3DERR_UNSUPPORTEDOVERLAYFORMAT
O dispositivo não dá suporte à sobreposição para o formato de superfície especificado.
Direct3D 9Ex em apenas Windows 7.
D3DERR_CANNOTPROTECTCONTENT
O conteúdo especificado não pode ser protegido.
Direct3D 9Ex em apenas Windows 7.
D3DERR_UNSUPPORTEDCRYPTO
Não há suporte para o algoritmo criptográfico especificado.
Direct3D 9Ex em apenas Windows 7.
D3DERR_PRESENT_STATISTICS_DISJOINT
As estatísticas atuais não têm sequência ordenada.
Direct3D 9Ex em apenas Windows 7.

Comentários

Os erros são representados por valores negativos e não podem ser combinados.

Outros códigos de retorno estão contidos em S_PRESENT.

O código de instalação _FACD3D é usado para gerar códigos de erro, como nas macros a seguir.

// 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 )

Requisitos

Requisito Valor
parâmetro
D3d9.h

Confira também

Constantes Direct3D