Método ID3D12Device10::CreateReservedResource2 (d3d12.h)
Cria um recurso reservado e ainda não mapeado para nenhuma página em um heap.
Requer o SDK de Agilidade do DirectX 12 1.7 ou posterior.
Sintaxe
HRESULT CreateReservedResource2(
const D3D12_RESOURCE_DESC *pDesc,
D3D12_BARRIER_LAYOUT InitialLayout,
const D3D12_CLEAR_VALUE *pOptimizedClearValue,
ID3D12ProtectedResourceSession *pProtectedSession,
UINT32 NumCastableFormats,
const DXGI_FORMAT *pCastableFormats,
[in] REFIID riid,
void **ppvResource
);
Parâmetros
pDesc
Tipo: const D3D12_RESOURCE_DESC*
Um ponteiro para uma estrutura de D3D12_RESOURCE_DESC que descreve o recurso.
InitialLayout
O layout inicial do recurso de textura; D3D12_BARRIER_LAYOUT::D 3D12_BARRIER_LAYOUT_UNDEFINED para buffers.
pOptimizedClearValue
Tipo: const D3D12_CLEAR_VALUE*
Especifica uma estrutura de D3D12_CLEAR_VALUE que descreve o valor padrão para uma cor clara.
pOptimizedClearValue especifica um valor para o qual as operações claras são mais ideais. Quando o recurso criado é uma textura com os sinalizadores D3D12_RESOURCE_FLAG_ALLOW_RENDER_TARGET ou D3D12_RESOURCE_FLAG_ALLOW_DEPTH_STENCIL, você deve escolher o valor com o qual a operação clara será mais comumente chamada. Você pode chamar a operação clara com outros valores, mas essas operações não serão tão eficientes quanto quando o valor corresponder ao passado para a criação de recursos.
Ao usar D3D12_RESOURCE_DIMENSION_BUFFER, você deve definir pOptimizedClearValue para nullptr
.
pProtectedSession
Tipo: ID3D12ProtectedResourceSession*
Um ponteiro opcional para um objeto que representa uma sessão para proteção de conteúdo. Se fornecida, esta sessão indica que o recurso deve ser protegido. Você pode obter um ID3D12ProtectedResourceSession chamando ID3D12Device4::CreateProtectedResourceSession.
NumCastableFormats
O número de elementos em pCastableFormats.
pCastableFormats
Uma matriz contígua de estruturas de DXGI_FORMAT às quais esse recurso pode ser convertido.
[in] riid
Tipo: REFIID
Uma referência ao identificador global exclusivo (GUID) da interface de recurso a ser retornada em ppvResource. Consultede Comentários do
Embora
ppvResource
Tipo: void**
Um ponteiro opcional para um bloco de memória que recebe o ponteiro de interface solicitado para o objeto de recurso criado.
ppvResource pode ser nullptr
para habilitar o teste de capacidade. Quando ppvResource é nullptr
, nenhum objeto é criado e S_FALSE é retornado quando pDesc é válido.
Valor de retorno
Se a função for bem-sucedida, ela retornará S_OK. Caso contrário, ele retornará um
Valor de retorno | Descrição |
---|---|
E_OUTOFMEMORY | Não há memória suficiente para criar o recurso. |
Consulte códigos de retorno do Direct3D 12 para obter outros valores de retorno possíveis.
Observações
Consulte de Comentários para ID3D12Device.CreateReservedResource.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino |
Windows |
cabeçalho | d3d12.h |
biblioteca | D3d12.lib |
de DLL |
D3d12.dll |