하드웨어 기능 수준

11_0~12_1 하드웨어 기능 수준의 기능을 설명합니다.

신규 및 기존 컴퓨터에서 다양한 비디오 카드를 처리하기 위해 Microsoft Direct3D 11은 기능 수준 개념을 도입했습니다. 각 비디오 카드는 설치된 GPU(그래픽 처리 장치)에 따라 특정 수준의 Microsoft DX(DirectX) 기능을 구현합니다. 기능 수준은 잘 정의된 GPU 기능 세트입니다. instance 경우 11_0 기능 수준은 Direct3D 11에서 구현된 기능을 구현합니다.

이제 디바이스를 만들 때 요청하고자 하는 기능 수준에 맞게 디바이스를 생성하려고 시도할 있습니다. 디바이스 생성이 진행되면 기능 수준이 지원되는 것이고, 그렇지 않으면 하드웨어에서 기능 수준이 지원되지 않는 것입니다. 더 낮은 기능 수준에서 디바이스를 다시 생성해 보거나 애플리케이션을 종료하는 방법을 선택할 수 있습니다.

기능 수준의 기본 속성은 다음과 같습니다.

  • 모든 Direct3D 12 드라이버는 기능 수준 11_0 이상이 됩니다.
  • 디바이스 생성을 허용하는 GPU는 해당 기능 수준의 기능을 충족하거나 초과합니다.
  • 기능 수준에는 항상 이전 또는 더 낮은 기능 수준의 기능이 포함됩니다.
  • 기능 수준은 성능이 아닌 기능만 의미합니다. 성능은 하드웨어 구현에 따라 달라집니다.
  • 기능 수준은 D3D12CreateDevice를 호출할 때 선택됩니다.
  • 지원되는 기능(특히 아래 표에 선택 사항으로 표시되어 하드웨어가 해당 기능을 지원할 수 있지만 필수는 아닌 기능)에 대한 자세한 내용은 보려면 CheckFeatureSupport를 호출하세요.

특정 기능 수준에서 비하드웨어 유형 디바이스를 만들 때 적용되는 제한 사항에 대한 내용은 WARP 및 참조 디바이스 생성 시 제한 사항을 참조하세요. 기능 수준 도입에 대한 자세한 내용은 Direct3D 기능 수준에 대한 Direct3D 11 설명서를 참조하세요.

번호 매기기 시스템

하드웨어 기능 수준은 API 버전과 동일하지 않습니다. 예를 들어 D3D11.3 API가 있지만 11_3 하드웨어 기능 수준은 없습니다. 기능 수준은 D3D_FEATURE_LEVEL 열거형에 정의됩니다.

고유한 번호 매기기 시스템에는 다음 3가지가 있습니다.

  • Direct3D 버전은 마침표를 사용합니다(예: Direct3D 12.0).
  • 셰이더 모델은 마침표를 사용합니다(예: 셰이더 모델 5.1).
  • 기능 수준은 밑줄을 사용합니다. 예를 들어 기능 수준 12_0입니다.

기능 수준 지원

다음 기능은 각 Direct3D 기능 수준에 대해 사용할 수 있습니다.

맨 위 행의 머리글은 Direct3D 기능 수준입니다. 왼쪽 열의 제목이 기능입니다.

기능 \ 기능 수준 12_1 12_0 11_1 11_0
셰이더 모델 6.0 6.0 6.0/5.1² 6.0/5.1²
리소스 바인딩 계층 Tier2³ Tier2³ Tier1³ Tier1³
타일식 리소스 Tier2³ Tier2³ 선택 사항 선택 사항
일반 래스터화 Tier1³ 선택 사항 선택 사항 아니요
ROV(정렬된 래스터라이저 보기) 선택 사항 선택 사항 아니요
최소/최대 필터 Yes 선택 사항 아니요
기본 버퍼 매핑 선택 사항 선택 사항 선택 사항 선택 사항
셰이더 지정 스텐실 참조 값 선택 사항 선택 사항 선택 사항 아니요
형식화된 UAV(순서가 지정되지 않은 액세스 뷰) 로드 18개 형식, 좀 더 선택적 18개 형식, 좀 더 선택적 3개 형식, 좀 더 선택적 3개 형식, 좀 더 선택적
기하 도형 셰이더 Yes Yes Yes Yes
스트림 출력 Yes Yes Yes Yes
DirectCompute/컴퓨팅 셰이더 Yes Yes Yes Yes
헐 및 도메인 셰이더 Yes Yes Yes Yes
텍스처 리소스 배열 Yes Yes Yes Yes
큐브맵 리소스 배열 Yes Yes Yes Yes
BC1-BC7 압축 Yes Yes Yes Yes
Alpha-to-coverage Yes Yes Yes Yes
논리 연산(출력 병합기) Yes Yes 선택 사항
대상 독립적 래스터화 Yes Yes Yes 아니요
ForcedSampleCount가 1인 MRT(다중 렌더링 대상) Yes Yes 선택 사항
UAV 전용 렌더링에 대한 최대 강제 샘플 수 16 16 16 8
최대 텍스처 차원 16384 16384 16384 16384
최대 큐브맵 차원 16384 16384 16384 16384
최대 볼륨 범위 2048 2048 2048 2048
최대 텍스처 반복 16384 16384 16384 16384
최대 이방성 16 16 16 16
최대 기본 형식 수 2^32 – 1 2^32 – 1 2^32 – 1 2^32 – 1
최대 꼭짓점 인덱스 2^32 – 1 2^32 – 1 2^32 – 1 2^32 – 1
최대 입력 슬롯 32 32 32 32
동시 렌더링 대상 8 8 8 8
폐색 쿼리 Yes Yes Yes Yes
알파 혼합 구분 Yes Yes Yes Yes
한 번 미러링 Yes Yes Yes Yes
겹치는 꼭짓점 요소 Yes Yes Yes Yes
독립 쓰기 마스크 Yes Yes Yes Yes
인스턴싱 Yes Yes Yes Yes

 

  • ⁰ Direct3D 11.3 또는 Direct3D 12 런타임이 필요합니다.
  • ¹ Direct3D 11.1 런타임이 필요합니다.
  • ² 셰이더 모델 5.0은 필요에 따라 배정밀도 셰이더, 확장된 배정밀도 셰이더, SAD4 셰이더 명령 및 부분 정밀도 셰이더를 지원할 수 있습니다. 사용할 수 있는 셰이더 모델 5.0 옵션을 확인하려면 ID3D12Device::CheckFeatureSupport를 호출하세요. 일부 호환성은 실행 중인 하드웨어에 따라 달라집니다. 셰이더 모델 5.1은 사용 중인 기능 수준에 관계없이 DirectX 12 API를 지원하는 하드웨어에서만 지원됩니다. DirectX 11 하드웨어는 셰이더 모델 5.0까지 지원합니다. DirectX 12 API는 기능 수준 11_0으로만 내려갑니다.
  • ³ 더 높은 계층은 선택 사항입니다.
  • 기능 수준 12_0 및 12_1에는 Direct3D 11.3 또는 Direct3D 12 런타임이 필요합니다.
  • 기능 수준 11_1에는 Direct3D 11.1 런타임이 필요합니다.
  • 기능 수준 11_0에는 Direct3D 11.0 런타임이 필요합니다.

DXGI 형식에 대한 하드웨어 지원

DXGI 형식 및 하드웨어 기능의 테이블을 보려면 다음을 참조하세요.

기능 쿼리

Direct3D 12 이해