Método ID3D12Device7::AddToStateObject (d3d12.h)
Adicione incrementalmente a um objeto de estado existente. Isso incorre em uma sobrecarga de CPU menor do que criar um objeto de estado do zero que é um superconjunto de um existente (por exemplo, adicionar mais alguns sombreadores).
Sintaxe
HRESULT AddToStateObject(
const D3D12_STATE_OBJECT_DESC *pAddition,
ID3D12StateObject *pStateObjectToGrowFrom,
REFIID riid,
void **ppNewStateObject
);
Parâmetros
pAddition
Tipo: _In_ const D3D12_STATE_OBJECT_DESC*
Descrição do conteúdo do objeto de estado a ser adicionado ao objeto de estado existente. Para ajudar a gerar isso, consulte o auxiliar CD3D12_STATE_OBJECT_DESC na classe em d3dx12.h
.
pStateObjectToGrowFrom
Tipo: _In_ ID3D12StateObject*
Objeto de estado existente, que pode estar em uso (por exemplo, raytracing ativo) durante essa operação.
O objeto de estado existente não deve ser do tipo Coleção.
riid
Tipo: _In_ REFIID
Deve ser a IID da interface ID3D12StateObject .
ppNewStateObject
Tipo: _COM_Outptr_ void**
Objeto de estado retornado.
O comportamento será indefinido se os identificadores de sombreador forem recuperados para novos sombreadores dessa chamada e eles forem acessados por meio de tabelas de sombreador por qualquer lista de comandos já existente ou em voo que faça referência a algum objeto de estado mais antigo. O uso dos novos sombreadores adicionados ao objeto de estado só pode ocorrer de comandos (como DispatchRays ou ExecuteIndirect calls) registrados em uma lista de comandos após a chamada para AddToStateObject.
Retornar valor
S_OK para o sucesso. E_INVALIDARG, E_OUTOFMEMORY em caso de falha. A camada de depuração fornece informações detalhadas de status.
Comentários
Para obter mais informações, consulte AddToStateObject.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 10 Build 20348 |
Servidor mínimo com suporte | Windows 10 Build 20348 |
Cabeçalho | d3d12.h |
Biblioteca | d3d12.lib |
DLL | d3d12.dll |