핵심 인터페이스
다음 인터페이스는 d3d12.h에서 선언됩니다.
섹션 내용
항목 | 설명 |
---|---|
ID3D12CommandAllocator | GPU(그래픽 처리 장치) 명령에 대한 스토리지 할당을 나타냅니다. |
ID3D12CommandList | ID3D12GraphicsCommandList가 상속하는 인터페이스입니다. GPU가 실행하는 순서가 지정된 명령 집합을 나타내며 확장이 그래픽(예: 컴퓨팅 및 복사)에 대한 명령 목록보다 다른 명령 목록을 지원할 수 있도록 허용합니다. |
ID3D12CommandQueue | 명령 목록을 제출하고, 명령 목록 실행을 동기화하고, 명령 큐를 계측하고, 리소스 타일 매핑을 업데이트하는 메서드를 제공합니다. |
ID3D12CommandSignature | 명령 서명 개체를 사용하면 앱에서 사용할 버퍼 형식, 명령 유형 및 리소스 바인딩을 포함하여 간접 그리기를 지정할 수 있습니다. |
ID3D12DescriptorHeap | 설명자 힙은 설명자의 연속 할당 컬렉션으로, 모든 설명자에 대한 하나의 할당입니다. 설명자 힙은 PSO(파이프라인 상태 개체)에 속하지 않는 많은 개체 유형[예: SRV(셰이더 리소스 뷰), UAV(순서가 지정되지 않은 액세스 뷰), CBV(상수 버퍼 뷰) 및 샘플러]을 포함합니다. |
ID3D12Device | 가상 어댑터를 나타냅니다. 명령 할당자, 명령 목록, 명령 큐, 펜스, 리소스, 파이프라인 상태 개체, 힙, 루트 서명, 샘플러 및 여러 리소스 뷰를 만드는 데 사용됩니다. |
ID3D12Device1 | 가상 어댑터를 나타내고 ID3D12Device에서 제공하는 메서드 범위를 확장합니다. |
ID3D12Device2 | 가상 어댑터를 나타냅니다. 이 인터페이스는 ID3D12Device1 을 확장하여 파이프라인 상태 스트림 설명에서 파이프라인 상태 개체를 만듭니다. |
ID3D12Device3 | 가상 어댑터를 나타냅니다. 이 인터페이스는 ID3D12Device2 를 확장하여 GPU 오류 또는 디바이스 제거 시나리오의 경우에도 지속되는 시스템 메모리에 특수한 용도의 진단 힙을 만들 수 있도록 지원합니다. |
ID3D12Device4 | 가상 어댑터를 나타냅니다. 이 인터페이스는 ID3D12Device3을 확장합니다. |
ID3D12Device5 | 가상 어댑터를 나타냅니다. 이 인터페이스는 ID3D12Device4를 확장합니다. |
ID3D12Device6 | 가상 어댑터를 나타냅니다. 이 인터페이스는 ID3D12Device5를 확장합니다. |
ID3D12Device7 | 가상 어댑터를 나타냅니다. 이 인터페이스는 ID3D12Device6을 확장합니다. |
ID3D12Device8 | 가상 어댑터를 나타냅니다. 이 인터페이스는 ID3D12Device7을 확장합니다. |
ID3D12Device9 | 가상 어댑터를 나타냅니다. 이 인터페이스는 ID3D12Device8 을 확장하여 셰이더 캐시를 관리하는 메서드를 추가합니다. |
ID3D12Device10 | 가상 어댑터를 나타냅니다. |
ID3D12DeviceChild | ID3D12PipelineLibrary, ID3D12CommandList, ID3D12Pageable 및 ID3D12RootSignature를 포함하여 다른 핵심 인터페이스가 상속하는 인터페이스입니다. 생성된 디바이스 개체로 돌아가는 메서드를 제공합니다. |
ID3D12DeviceRemovedExtendedData | 디바이스 DRED(확장 데이터 제거) 데이터에 대한 런타임 액세스를 제공합니다. |
ID3D12DeviceRemovedExtendedDataSettings | 이 인터페이스는 DRED(디바이스 제거된 확장 데이터) 설정을 제어합니다. |
ID3D12Fence | 펜스, CPU 동기화에 사용되는 개체 및 하나 이상의 GPU를 나타냅니다. |
ID3D12Fence1 | 펜스를 나타냅니다. 이 인터페이스는 ID3D12Fence를 확장하고 원래 펜스를 만드는 데 사용되는 플래그의 검색을 지원합니다. |
ID3D12GraphicsCommandList | 렌더링을 위한 그래픽 명령 목록을 캡슐화합니다. 명령 목록 실행을 계측하고 파이프라인 상태를 설정 및 지우기 위한 API를 포함합니다. |
ID3D12GraphicsCommandList1 | 렌더링을 위한 그래픽 명령 목록을 캡슐화하고, 프로그래밍 가능한 샘플 위치를 지원하도록 서체를 확장하고, 지연 래치 기술을 구현하기 위한 원자 복사본 및 선택적 깊이 경계 테스트를 지원합니다. |
ID3D12GraphicsCommandList2 | 렌더링을 위한 그래픽 명령 목록을 캡슐화하여 버퍼에 직접 직접 값을 쓸 수 있도록 인터페이스를 확장합니다. |
ID3D12GraphicsCommandList3 | 렌더링을 위한 그래픽 명령 목록을 캡슐화합니다. |
ID3D12GraphicsCommandList4 | 렌더링을 위한 그래픽 명령 목록을 캡슐화하고, 광선 추적 및 렌더링 패스를 지원하도록 인터페이스를 확장합니다. |
ID3D12GraphicsCommandList7 | TBD |
ID3D12Heap | 힙은 실제 메모리를 관리하는 데 사용되는 연속 메모리 할당의 추상화입니다. 이 힙은 ID3D12Resource 개체와 함께 사용하여 배치된 리소스 또는 예약된 리소스를 지원할 수 있습니다. |
ID3D12LifetimeOwner | 개체의 수명 변경에 대한 알림을 받는 데 사용되는 애플리케이션 정의 콜백을 나타냅니다. |
ID3D12LifetimeTracker | 수명 추적 개체의 수명을 제어하기 위한 기능을 나타냅니다. |
ID3D12MetaCommand | 메타 명령을 나타냅니다. 메타 명령은 IHV(독립 하드웨어 공급업체)에 의해 가속화되는 알고리즘을 나타내는 Direct3D 12 개체입니다. 드라이버에서 구현하는 명령 생성기에 대한 불투명 참조입니다. |
ID3D12Object | ID3D12Device 및 ID3D12DeviceChild가 상속하는 인터페이스입니다. 프라이빗 데이터를 연결하고 개체 이름에 주석을 추가하는 메서드를 제공합니다. |
ID3D12Pageable | 다른 많은 핵심 인터페이스가 상속하는 인터페이스입니다. 개체 형식이 GPU에 액세스할 수 있는 메모리의 양을 캡슐화한다는 것을 나타냅니다. 하지만 애플리케이션이 개체의 상주를 조작할 수 있는지 여부를 강력하게 나타내지는 않습니다. |
ID3D12PipelineLibrary | 파이프라인 라이브러리, 특히 개별 PSO 로드 및 검색을 관리합니다. |
ID3D12PipelineLibrary1 | 파이프라인 라이브러리를 관리합니다. 이 인터페이스는 ID3D12PipelineLibrary 를 확장하여 파이프라인 상태 스트림 설명에서 PSO를 로드합니다. |
ID3D12PipelineState | 현재 설정된 모든 셰이더와 특정 고정 함수 상태 개체의 상태를 나타냅니다. |
ID3D12QueryHeap | 쿼리 힙을 관리합니다. 쿼리 힙은 인덱스에서 참조하는 쿼리 배열을 보유합니다. |
ID3D12Resource | CPU 및 GPU가 실제 메모리 또는 힙에 읽고 쓰는 일반화된 기능을 캡슐화합니다. 셰이더 샘플링에 최적화된 다차원 데이터뿐만 아니라 간단한 데이터 배열을 구성하고 조작하기 위한 추상화가 포함되어 있습니다. |
ID3D12RootSignature | 루트 서명은 그래픽 파이프라인에 바인딩되는 리소스를 정의합니다. 루트 서명은 앱에서 구성되고 명령 목록을 셰이더에 필요한 리소스에 연결합니다. 현재 앱당 하나의 그래픽과 하나의 컴퓨팅 루트 서명이 있습니다. |
ID3D12RootSignatureDeserializer | 직렬화된 루트 서명 버전 1.0의 역직렬화된 D3D12-ROOT-SIGNATURE-DESC 데이터 구조를 반환하는 메서드를 포함합니다. |
ID3D12SDKConfiguration | SDK 구성 메서드를 제공합니다. |
ID3D12ShaderCacheSession | 셰이더 캐시 세션을 나타냅니다. |
ID3D12StateObject | 애플리케이션이 단일 단위로 관리하고 컴파일 또는 최적화와 같이 처리하도록 드라이버에 원자성으로 제공되는 셰이더를 포함한 구성 상태의 가변 양을 나타냅니다. |
ID3D12StateObjectProperties | ID3D12StateObject의 속성을 가져오고 설정하는 메서드를 제공합니다. |
ID3D12Tools | 이 인터페이스는 PIX와 같은 도구에 대한 런타임을 구성하는 데 사용됩니다. 다른 시나리오에 대해서는 의도되거나 지원되지 않습니다. |
ID3D12VersionedRootSignatureDeserializer | 직렬화된 루트 서명의 모든 버전의 역직렬화된 D3D12-ROOT-SIGNATURE-DESC1 데이터 구조를 반환하는 메서드를 포함합니다. |
ID3D12VirtualizationGuestDevice | TBD |