ID3D11Device (장치)
- ID3D11Device는 리소스를 생성하는데 주로 사용한다.
- Direct3D를 활용한 응용 프로그램에서는 하나 이상의 장치를 생성해야 한다.
- D3D11CreateDevice나 D3D11CreateDeviceAndSwapChain을 사용해 장치를 생성할 수 있다.
ID3D11DeviceContext (장치 문맥/컨텍스트)
- ID3D11DeviceContext는 렌더링 파이프라인 각 단계에서 사용할 프로그램 및 리소스를 바인딩(연결/할당) 하는데 사용한다.
IDXGISwapChain (스왑 체인)
- 렌더링 대상(타겟)이 되는 백버퍼(Back Buffer)를 생성하고 관리하는 일을 담당하며, 현재 화면에 출력되고 있는 이미지인 프론트 버퍼(Front Buffer)와 백버퍼(Back Buffer)를 교환하는 일을 담당한다.
- 스왑 체인은 다음의 렌더링 특성을 정의한다.
- 렌더링 영역의 크기
- 디스플레이의 새로 고침(업데이트) 빈도(Rate)
- 디스플레이 모드(Fullscreen/Windowed)
- 포면 형식 (Surface Type)
- DXGI_SWAP_CHAIN_DESC 구조체에 필요한 정보를 입력하고 D3D11CreateDeviceAndSwapChain이나 IDXGIFactory::CreateSwapChain을 사용해 생성할 수 있다.