일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 타입 객체
- 영속성
- Direct12
- 병행성
- 그리디알고리즘
- directx
- 알고리즘
- 다이나믹프로그래밍
- 스케줄링
- 락
- 컨디션 변수
- DirectX12
- 디자인패턴
- codility
- 파일시스템 구현
- 멀티프로세서
- 렌더링 파이프라인
- 백준
- I/O장치
- 병행성 관련 오류
- 프로그래머스
- 멀티쓰레드
- 쓰레드
- DirectX 12
- 그리디 알고리즘
- 동적계획법
- OS
- 자료구조
- 운영체제
- 다이나믹 프로그래밍
Archives
- Today
- Total
기록공간
[DirectX 12] 기본지식 - 기능 수준(Feature Level) 본문
반응형
기능 수준이라는 개념은 Direct3D 11에서 도입된 것으로, 코드에서는 D3D_FEATURE_LEVEL이라는 enum형으로 대표된다. 기능 수준들은 대략 버전 9에서 11까지의 여러 Direct3D 버전들에 대응된다.
기능 수준들은 GPU가 지원하는 기능들의 엄격한 집합을 정의한다(각 기능들이 지원하는 구체적인 내용은 SDK를 참고). 예를들어 기능 수준 11을 지원하는 GPU는 반드시 Direct3D 11의 기능 집합 전체를 지원해야 한다.
이러한 기능 수준은 응용 프로그램 개발을 편하게 해주는 요인이다. 현재 GPU의 기능 수준을 파악하기만 하면, 구체적으로 어떤 기능을 사용할 수 있는지를 확실히 알 수 있기 때문이다.
사용자의 하드웨어가 특정 기능 수준을 지원하지 않는 경우 응용 프로그램이 실행을 아예 포기하는 대신 더 낮은 기능 수준으로 후퇴하는 전략을 사용할 수도 있다.
예를 들어 대상 사용자층을 넓히기 위해 Direct3D 12뿐만 아니라 Direct3D 11, 10, 9.3 수준 하드웨어까지 지원한다고 하자. 이 경우 응용 프로그램은 높은 수준에서 낮은 수준으로 기능 수준들을 점검한다. 즉, 응용 프로그램은 먼저 하드웨어가 Direct3D 12를 지원하는지 점검하고, 아니라면 Direct 11로(혹은 9.3까지도) 내려간다.
실제 응용 프로그램이라면 대상 사용자층을 최대화하기 위해 구현 하드웨어의 지원에도 신경을 써야 할 것이다.
반응형
'DirectX > 기초' 카테고리의 다른 글
[DirectX 12] 기본지식 - 상주성(Residency) (0) | 2020.02.11 |
---|---|
[DirectX 12] 기본지식 - DXGI(DirectX Graphics Infrastructure) (0) | 2020.02.05 |
[DirectX 12] 기본지식 - 다중 샘플링(Multisampling) (5) | 2020.02.05 |
[DirectX 12] 기본지식 - 자원과 서술자 (0) | 2020.02.03 |
[DirectX 12] 기본지식 - 깊이 버퍼링(Depth Buffering) (6) | 2020.02.03 |
Comments