Partilhar via


PFND3D10DDI_CREATERESOURCE função de retorno de chamada (d3d10umddi.h)

Cria um recurso.

Sintaxe

PFND3D10DDI_CREATERESOURCE Pfnd3d10ddiCreateresource;

void Pfnd3d10ddiCreateresource(
  D3D10DDI_HDEVICE unnamedParam1,
  const D3D10DDIARG_CREATERESOURCE *unnamedParam2,
  D3D10DDI_HRESOURCE unnamedParam3,
  D3D10DDI_HRTRESOURCE unnamedParam4
)
{...}

Parâmetros

unnamedParam1

hDevice [in]

Um identificador para o dispositivo de exibição (contexto gráfico).

unnamedParam2

pCreateResource [in]

Um ponteiro para uma estrutura D3D10DDIARG_CREATERESOURCE que descreve os parâmetros que o driver de exibição do modo de usuário usa para criar um recurso.

unnamedParam3

hResource [in]

Um identificador para os dados privados do driver para o recurso.

unnamedParam4

hRTResource [in]

Um identificador para o recurso que o driver deve usar sempre que chamar de volta para o runtime do Direct3D.

Retornar valor

Nenhum

Comentários

O driver pode usar a função de retorno de chamada pfnSetErrorCb para definir um código de erro.

O driver pode ficar sem memória. Portanto, o driver pode passar E_OUTOFMEMORY ou D3DDDIERR_DEVICEREMOVED em uma chamada para a função pfnSetErrorCb . O driver também pode passar DXGI_DDI_ERR_UNSUPPORTED em uma chamada para pfnSetErrorCb. Para obter mais informações sobre como passar DXGI_DDI_ERR_UNSUPPORTED, consulte a seção Comentários da página de referência BltDXGI . O runtime do Direct3D determinará que quaisquer outros erros são críticos. Se o driver passar erros, incluindo D3DDDIERR_DEVICEREMOVED, o runtime do Direct3D determinará que o identificador é inválido; Portanto, o runtime não chamará a função DestroyResource(D3D10) para destruir o identificador especificado pelo parâmetro hResource .

O runtime validará todos os parâmetros em relação aos parâmetros que um aplicativo enviou para criar o recurso. Portanto, o driver não deve receber combinações inválidas.

Se o aplicativo não exigir que o conteúdo do recurso persista entre apresentações, o runtime definirá o sinalizador D3D10_DDI_RESOURCE_MISC_DISCARD_ON_PRESENT da enumeração D3D10_DDI_RESOURCE_MISC_FLAG no membro MiscFlags da estrutura D3D10DDIARG_CREATERESOURCE para a qual o parâmetro pCreateResource aponta. A apresentação ocorre quando a função PresentDXGI ou BltDXGI do driver (com o sinalizador Present definido na estrutura DXGI_DDI_ARG_BLT_FLAGS ) é chamada. O runtime usa o sinalizador D3D10_DDI_RESOURCE_MISC_DISCARD_ON_PRESENT para criar buffers back de cadeia de troca quando um aplicativo usa o valor DXGI_SWAP_EFFECT_DISCARD para solicitar cadeias de troca.

Criando um buffer de fundo estéreo

Começando no Windows 8, se o driver precisar criar um buffer de fundo estéreo, ele deverá definir membros da estrutura D3D10DDIARG_CREATERESOURCE apontada por pCreateResource da seguinte maneira:
  1. Defina o membro ArraySize como um valor de 2.
  2. Defina o valor do sinalizador D3D10_DDI_BIND_PRESENT no membro BindFlags .
Além disso, para dar suporte à apresentação estéreo, a função BltDXGI deve permitir quaisquer valores para os membros DstSubresource e SrcSubresource da estrutura DXGI_DDI_ARG_BLT que estão dentro do intervalo dos recursos de origem e destino.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Windows Vista e versões posteriores dos sistemas operacionais Windows.
Plataforma de Destino Área de Trabalho
Cabeçalho d3d10umddi.h (inclua D3d10umddi.h)

Confira também

BltDXGI

CalcPrivateResourceSize

D3D10DDIARG_CREATERESOURCE

D3D10DDI_DEVICEFUNCS

DXGI_DDI_ARG_BLT

DestroyResource(D3D10)

pfnSetErrorCb