ID3D12Device-Schnittstelle (d3d12.h)
Stellt einen virtuellen Adapter dar; Es wird verwendet, um Befehlszuordnungen, Befehlslisten, Befehlswarteschlangen, Zäune, Ressourcen, Pipelinestatusobjekte, Heaps, Stammsignaturen, Sampler und viele Ressourcensichten zu erstellen.
Vererbung
Die ID3D12Device-Schnittstelle erbt von ID3D12Object. ID3D12Device verfügt auch über folgende Arten von Membern:
Methoden
Die ID3D12Device-Schnittstelle verfügt über diese Methoden.
ID3D12Device::CheckFeatureSupport Ruft Informationen zu den Features ab, die vom aktuellen Grafiktreiber unterstützt werden. (ID3D12Device.CheckFeatureSupport) |
ID3D12Device::CopyDescriptors Kopiert Deskriptoren aus einer Quelle in ein Ziel. (ID3D12Device.CopyDescriptors) |
ID3D12Device::CopyDescriptorsSimple Kopiert Deskriptoren aus einer Quelle in ein Ziel. (ID3D12Device.CopyDescriptorsSimple) |
ID3D12Device::CreateCommandAllocator Erstellt ein Befehlszuordnungsobjekt. |
ID3D12Device::CreateCommandList Erstellt eine Befehlsliste. |
ID3D12Device::CreateCommandQueue Erstellt eine Befehlswarteschlange. |
ID3D12Device::CreateCommandSignature Diese Methode erstellt eine Befehlssignatur. |
ID3D12Device::CreateCommittedResource Erstellt sowohl eine Ressource als auch einen impliziten Heap, sodass der Heap groß genug ist, um die gesamte Ressource zu enthalten, und die Ressource dem Heap zugeordnet wird. |
ID3D12Device::CreateComputePipelineState Erstellt ein Computepipelinezustandsobjekt. |
ID3D12Device::CreateConstantBufferView Erstellt eine Konstantenpuffersicht für den Zugriff auf Ressourcendaten. |
ID3D12Device::CreateDepthStencilView Erstellt eine Tiefenschablonenansicht für den Zugriff auf Ressourcendaten. |
ID3D12Device::CreateDescriptorHeap Erstellt ein Deskriptor-Heapobjekt. |
ID3D12Device::CreateFence Erstellt ein Zaunobjekt. (ID3D12Device.CreateFence) |
ID3D12Device::CreateGraphicsPipelineState Erstellt ein Grafikpipelinezustandsobjekt. |
ID3D12Device::CreateHeap Erstellt einen Heap, der mit platzierten Ressourcen und reservierten Ressourcen verwendet werden kann. |
ID3D12Device::CreatePlacedResource Erstellt eine Ressource, die in einem bestimmten Heap platziert wird. Platzierte Ressourcen sind die leichtesten verfügbaren Ressourcenobjekte und sind die schnellsten, um sie zu erstellen und zu zerstören. |
ID3D12Device::CreateQueryHeap Erstellt einen Abfrageheap. Ein Abfrageheap enthält ein Array von Abfragen. |
ID3D12Device::CreateRenderTargetView Erstellt eine Renderzielansicht für den Zugriff auf Ressourcendaten. (ID3D12Device.CreateRenderTargetView) |
ID3D12Device::CreateReservedResource Erstellt eine Ressource, die reserviert ist und noch keinen Seiten in einem Heap zugeordnet ist. |
ID3D12Device::CreateRootSignature Erstellt ein Stammsignaturlayout. |
ID3D12Device::CreateSampler Erstellen Sie ein Samplerobjekt, das Samplinginformationen für eine Textur kapselt. |
ID3D12Device::CreateShaderResourceView Erstellt eine Shaderressourcensicht für den Zugriff auf Daten in einer Ressource. (ID3D12Device.CreateShaderResourceView) |
ID3D12Device::CreateSharedHandle Erstellt ein freigegebenes Handle für ein Heap-, Ressourcen- oder Zaunobjekt. |
ID3D12Device::CreateUnorderedAccessView Erstellt eine Ansicht für den ungeordneten Zugriff. |
ID3D12Device::Evict Aktiviert das Ausblättern von Daten, was den GPU-Zugriff auf diese Daten ausschließt. |
ID3D12Device::GetAdapterLuid Ruft einen lokal eindeutigen Bezeichner für das aktuelle Gerät (Adapter) ab. |
ID3D12Device::GetCopyableFootprints Ruft ein Ressourcenlayout ab, das kopiert werden kann. Unterstützt die App beim Ausfüllen von D3D12_PLACED_SUBRESOURCE_FOOTPRINT und D3D12_SUBRESOURCE_FOOTPRINT beim Unterzuweisen von Speicherplatz in Uploadheaps. |
ID3D12Device::GetDescriptorHandleIncrementSize Ruft die Größe des Handleinkrements für den angegebenen Typ des Deskriptorheaps ab. Dieser Wert wird in der Regel verwendet, um ein Handle in ein Deskriptorarray um den richtigen Betrag zu erhöhen. |
ID3D12Device::GetDeviceRemovedReason Ruft den Grund ab, aus dem das Gerät entfernt wurde. |
ID3D12Device::GetNodeCount Gibt die Anzahl der physischen Adapter (Knoten) an, die diesem Gerät zugeordnet sind. |
ID3D12Device::GetResourceTiling Ruft Informationen darüber ab, wie eine gekachelte Ressource in Kacheln unterteilt wird. (ID3D12Device.GetResourceTiling) |
ID3D12Device::MakeResident Stellt Objekte für das Gerät ein. |
ID3D12Device::OpenSharedHandle Öffnet mithilfe von HANDLE und REFIID ein Handle für freigegebene Ressourcen, freigegebene Heaps und freigegebene Zäune. |
ID3D12Device::OpenSharedHandleByName Öffnet mithilfe von Name und Access ein Handle für freigegebene Ressourcen, freigegebene Heaps und freigegebene Zäune. |
ID3D12Device::SetStablePowerState Eine Hilfe zur Entwicklungszeit für bestimmte Arten von Profilerstellung und experimentellem Prototyping. |
Hinweise
Verwenden Sie D3D12CreateDevice , um ein Gerät zu erstellen.
Für Windows 10 Anniversary sind einige zusätzliche Funktionen über ID3D12Device1 verfügbar.
Beispiele
Das D3D1211on12-Beispiel verwendet ID3D12Device wie folgt:
Headerdateideklarationen.
// 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;
Überprüfung unterstützter Features.
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;
}
Weitere Informationen finden Sie im Beispielcode in der D3D12-Referenz.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | d3d12.h |