Interfaz ID3D12Device (d3d12.h)
Representa un adaptador virtual; se usa para crear asignadores de comandos, listas de comandos, colas de comandos, vallas, recursos, objetos de estado de canalización, montones, firmas raíz, muestreadores y muchas vistas de recursos.
Herencia
La interfaz ID3D12Device hereda de ID3D12Object. ID3D12Device también tiene estos tipos de miembros:
Métodos
La interfaz ID3D12Device tiene estos métodos.
ID3D12Device::CheckFeatureSupport Obtiene información sobre las características compatibles con el controlador de gráficos actual. (ID3D12Device.CheckFeatureSupport) |
ID3D12Device::CopyDescriptors Copia descriptores de un origen en un destino. (ID3D12Device.CopyDescriptors) |
ID3D12Device::CopyDescriptorsSimple Copia descriptores de un origen en un destino. (ID3D12Device.CopyDescriptorsSimple) |
ID3D12Device::CreateCommandAllocator Crea un objeto de asignador de comandos. |
ID3D12Device::CreateCommandList Crea una lista de comandos. |
ID3D12Device::CreateCommandQueue Crea una cola de comandos. |
ID3D12Device::CreateCommandSignature Este método crea una firma de comando. |
ID3D12Device::CreateCommittedResource Crea un recurso y un montón implícito, de modo que el montón es lo suficientemente grande como para contener todo el recurso y el recurso se asigna al montón. |
ID3D12Device::CreateComputePipelineState Crea un objeto de estado de canalización de proceso. |
ID3D12Device::CreateConstantBufferView Crea una vista de búfer constante para acceder a los datos de recursos. |
ID3D12Device::CreateDepthStencilView Crea una vista de galería de símbolos de profundidad para acceder a los datos de recursos. |
ID3D12Device::CreateDescriptorHeap Crea un objeto de montón de descriptores. |
ID3D12Device::CreateFence Crea un objeto de barrera. (ID3D12Device.CreateFence) |
ID3D12Device::CreateGraphicsPipelineState Crea un objeto de estado de canalización de gráficos. |
ID3D12Device::CreateHeap Crea un montón que se puede usar con recursos colocados y recursos reservados. |
ID3D12Device::CreatePlacedResource Crea un recurso que se coloca en un montón específico. Los recursos colocados son los objetos de recursos más ligeros disponibles y son los más rápidos para crear y destruir. |
ID3D12Device::CreateQueryHeap Crea un montón de consultas. Un montón de consultas contiene una matriz de consultas. |
ID3D12Device::CreateRenderTargetView Crea una vista de destino de representación para acceder a los datos de recursos. (ID3D12Device.CreateRenderTargetView) |
ID3D12Device::CreateReservedResource Crea un recurso reservado y aún no asignado a ninguna página de un montón. |
ID3D12Device::CreateRootSignature Crea un diseño de firma raíz. |
ID3D12Device::CreateSampler Cree un objeto sampler que encapsula la información de muestreo de una textura. |
ID3D12Device::CreateShaderResourceView Crea una vista de recursos de sombreador para acceder a los datos de un recurso. (ID3D12Device.CreateShaderResourceView) |
ID3D12Device::CreateSharedHandle Crea un identificador compartido en un montón, un recurso o un objeto de barrera. |
ID3D12Device::CreateUnorderedAccessView Crea una vista para el acceso desordenado. |
ID3D12Device::Evict Habilita la página fuera de los datos, lo que impide el acceso de GPU a esos datos. |
ID3D12Device::GetAdapterLuid Obtiene un identificador único local para el dispositivo actual (adaptador). |
ID3D12Device::GetCopyableFootprints Obtiene un diseño de recursos que se puede copiar. Ayuda al relleno de la aplicación D3D12_PLACED_SUBRESOURCE_FOOTPRINT y a D3D12_SUBRESOURCE_FOOTPRINT cuando se sube el espacio en montones de carga. |
ID3D12Device::GetDescriptorHandleIncrementSize Obtiene el tamaño del incremento del identificador para el tipo determinado de montón de descriptores. Este valor se usa normalmente para incrementar un identificador en una matriz de descriptores por la cantidad correcta. |
ID3D12Device::GetDeviceRemovedReason Obtiene el motivo por el que se quitó el dispositivo. |
ID3D12Device::GetNodeCount Notifica el número de adaptadores físicos (nodos) asociados a este dispositivo. |
ID3D12Device::GetResourceTiling Obtiene información sobre cómo se divide un recurso en mosaico en iconos. (ID3D12Device.GetResourceTiling) |
ID3D12Device::MakeResident Hace que los objetos resida para el dispositivo. |
ID3D12Device::OpenSharedHandle Abre un identificador para recursos compartidos, montones compartidos y barreras compartidas mediante HANDLE y REFIID. |
ID3D12Device::OpenSharedHandleByName Abre un identificador para recursos compartidos, montones compartidos y barreras compartidas, mediante El nombre y el acceso. |
ID3D12Device::SetStablePowerState Ayuda en tiempo de desarrollo para determinados tipos de generación de perfiles y prototipos experimentales. |
Comentarios
Use D3D12CreateDevice para crear un dispositivo.
Para Windows 10 aniversario, hay disponible alguna funcionalidad adicional a través de ID3D12Device1.
Ejemplos
El ejemplo D3D1211on12 usa ID3D12Device de la siguiente manera:
Declaraciones de archivo de encabezado.
// Pipeline objects.
D3D12_VIEWPORT m_viewport;
ComPtr<IDXGISwapChain3> m_swapChain;
ComPtr<ID3D12Device> m_device;
ComPtr<ID3D12Resource> m_renderTargets[FrameCount];
ComPtr<ID3D12Resource> m_depthStencil;
ComPtr<ID3D12CommandAllocator> m_commandAllocator;
ComPtr<ID3D12GraphicsCommandList> m_commandList;
ComPtr<ID3D12CommandQueue> m_commandQueue;
ComPtr<ID3D12RootSignature >m_rootSignature;
ComPtr<ID3D12DescriptorHeap> m_rtvHeap;
ComPtr<ID3D12DescriptorHeap> m_cbvSrvHeap;
ComPtr<ID3D12DescriptorHeap> m_dsvHeap;
ComPtr<ID3D12DescriptorHeap> m_samplerHeap;
ComPtr<ID3D12PipelineState> m_pipelineState1;
ComPtr<ID3D12PipelineState> m_pipelineState2;
D3D12_RECT m_scissorRect;
Comprobación de las características admitidas.
inline UINT8 D3D12GetFormatPlaneCount(
_In_ ID3D12Device* pDevice,
DXGI_FORMAT Format
)
{
D3D12_FEATURE_DATA_FORMAT_INFO formatInfo = {Format};
if (FAILED(pDevice->CheckFeatureSupport(D3D12_FEATURE_FORMAT_INFO, &formatInfo, sizeof(formatInfo))))
{
return 0;
}
return formatInfo.PlaneCount;
}
Consulte el código de ejemplo en la referencia D3D12.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Windows |
Encabezado | d3d12.h |