기록공간

[DirectX 12] 기본지식 - Direct3D 12란? 본문

DirectX/기초

[DirectX 12] 기본지식 - Direct3D 12란?

입코딩 2020. 2. 2. 22:22
반응형

Direct3D는 응용 프로그램에서 GPU(그래픽 처리 장치)를 제어하고 프로그래밍하는 데 쓰이는 저수준 그래픽 API(응용 프로그래밍 인터페이스)이다. 이를 이용하여 응용 프로그램은 3차원 그래픽 가속 기능을 이용해서 3차원 세계를 렌더링할 수 있게 된다. 게임 세계를 렌더링 하는데 있어 어떻게 하드웨어를 사용해야 할지에 대해서 필요한 명령들을 제공하여 사용자는 그것을 호출해주면 된다. 

 

응용 프로그램과 그래픽 하드웨어 사이에 Direct3D라는 간접층과 하드웨어 드라이버가 Direct3D 명령들을 시스템의 GPU가 직접 이해하는 고유한 기계어 명령들로 번역해 주므로 사용자는 GPU의 세부사항을 고려할 필요가 없다. 단, 이를 위해서는 Nvidia, Intel과 같은 GPU 제조사들이 Direct3D 팀과 협력하여 Direct3D를 준수하는 드라이버를 제공해야 한다.

 

Direct3D 12는 이전 버전들에 비해 주된 개선점은 CPU부담을 크게 줄이고 다중 스레드 지원을 개선하기 위해 설계를 다시 했다는 점이다. 이러한 성능상의 목표를 달성하기 위해, Direct3D 11보다 훨씬 낮은 수준의 API가 되었다. Direct3D 12는 이전보다 추상화가 줄었고, 개발자가 손수 관리해야 할 사항들이 늘어났으며, 현세대 GPU 아키텍처들을 좀 더 밀접하게 반영한다.

 

API를 사용하기 더 어려워졌지만, 그대신 성능이 개선되었다.

 

그래프 차례대로 DX11, DX12 싱글코어, DX12 듀얼코어, 쿼드코어이다. 확실히 부하가 코어 수에 따라 점점 줄어드는 것이 확연히 차이가 난다. 출처(https://wccftech.com/nvidia-amd-directx-12-graphic-card-list-features-explained/2/)

 

 

반응형
Comments