▷ Directx 12 vs vulkan : 최고의 그래픽 엔진을위한 싸움?
차례:
- 저수준 그래픽 API 및 "드라이버 오버 헤드"
- Microsoft DirectX
- 크로노스의 불칸
- DirectX 12와 Vulkan의 장단점
- 이중 API를 사용하는 게임의 성능 차이
현재 PC 세계에는 시장을 권위있게 관리하는 두 가지 일류 그래픽 API가 있습니다. 이러한 이유로 DirectX 12 Vs Vulkan 비교를 제공합니다.
둘 다 그들 뒤에 오랜 역사와 수비수와 비방 자 전체 무리가 있습니다. 오늘 우리는 차이점과 각각의 열쇠를 보게 될 것이고 그것들에 대해 약간의 조명을 제공하려고 노력할 것입니다.
목차 색인
저수준 그래픽 API 및 "드라이버 오버 헤드"
API는 "응용 프로그램 프로그래밍 인터페이스"를 나타내며 소프트웨어 개발을 용이하게하는 통신 프로토콜 및 유틸리티를 포함하는 개발자가 사용할 수있는 서브 루틴 세트입니다. 우리는 거의 모든 것을 찾을 수 있으며 각 서비스 제공 업체가 이러한 유형의 지원을 통해 간단하고 액세스 가능한 방식으로 시스템을 구현하는 것이 일반적입니다.
저수준 API는 GPU 리소스를 더 잘 활용하여 CPU를 줄이면서 현재 보유하고있는 멀티 코어 프로세서를 더 잘 활용할 수 있습니다.
DirectX 12 및 Vulkan 1.1 은 최신 그래픽 엔진의 지원이 필요한 게임 및 응용 프로그램 개발을위한 API입니다. 동시에 가장 중요한 그래픽 칩셋 디자이너의 드라이버가 지원하는 API이므로 매우 낮은 수준에서 디자인을 몰라도 기능에 빠르고 경제적으로 액세스 할 수 있습니다.
이와 같은 저수준 API를 사용하면 매우 가벼운 해석 계층으로 하드웨어를 사용할 수 있으므로 개발자는 하드웨어를 더 잘 활용하고 성능 및 효율성 측면에서 더 나은 결과를 얻을 수 있으며 다른 하위 시스템에 추가로드가 없어 질 수 있습니다. PC 또는 휴대 전화의 세계에서는 시스템의 일반 CPU에 덜 의존합니다.
오늘 이야기 할 두 API는 저수준 API로 간주 될 수 있으며 두 가지 개발로 인해 시스템 CPU에 대한 의존도가 점점 낮아지고 성능 수준에서 더 나은 결과를 얻고 더 많은 그래픽 기능에 액세스 할 수 있습니다. 고급. 이들은 일반 대중과 개발자가 기대하는 것과 일치하도록 매년 업데이트를받는 두 개의 라이브 API입니다.
저수준 API는 "드라이버 오버 헤드"라고 하는 다른 계산 개념에 직접적인 영향을 미칩니다. 즉, 컴퓨터에서 특정 유형의 작업을 실행하는 데 필요한 보조 리소스입니다. 그래픽의 경우 그래픽 카드가 작업을 수행하는 데 필요한 추가 리소스를 말하며이 경우 기본적으로 중앙 CPU 프로세스 시간입니다. 여기서 설명 할 저수준 API는이 종속성을 줄이고 실제로는 0이됩니다.
Microsoft DirectX
DirectX는 다른 Windows 멀티미디어 하위 시스템을 표준화해야 할 필요성으로 발생하며 WinG for Windows 3.1을 대체합니다. 이 패키지는 Windows 95에서 애드온 패키지로 채택되었으며 두 번째 버전 인 DirectX 2.0은 Windows 95 OSR2의 기본 구성 요소가되었습니다.
DirectX 내에서 Direct3D 와 같은 여러 독립적 인 API를 찾을 수 있습니다. Direct3D 는 실제로 DirectDraw, DirectMusic, DirectPlay 및 DirectSound입니다. DirectX는 이러한 모든 하위 API에서 공통적 인 발전을 명명하는 방법이었습니다. Windows 용 API이지만 Xbox 콘솔에서 게임 개발에도 사용되므로 Vulkan의 경우와 마찬가지로 멀티 플랫폼 API로 간주되지만 무료는 아닙니다.
최신 버전 인 DirectX 12 는 2014 년부터 우리와 함께 있었으며 여전히 서서히 유지되지 않았으며 몇 개월 전에 Windows 10 1809 년 10 월 업데이트 버전에 포함 된 DXR (Direct Ray Tracing) 서브 루틴과 같은 중요한 개선 사항을 받았습니다.
DirectX 12 와 같은 저수준 API는 근본적인 이점을 가지므로 드라이버 오버 헤드가 줄어 듭니다. 프로그래머는 이제 GPU가 프로그램에서 작동하는 방식을 설계하고 특히 프로세스 병렬화를 활용하여 GPU 리소스를보다 잘 관리 할 수 있습니다. 여기에는 하나의 시스템에서 여러 GPU를 지원하고 동일한 제조업체가 아닌 경우에도 더 나은 지원이 포함됩니다.
이들은 호환 가능한 그래픽의 기능을 활용하고 복잡한 버스를 대형 버스에서 병렬로 처리하여 더 간단한 것으로 나누는 "정수"또는 "부동 소수점"과 같은 다양한 유형의 작업을 실행할 수 있습니다. 좋은 예는 AMD 또는 Nvidia가 32 비트 버스에서 16 비트 작업을 처리하여 그래픽의 효율성을 크게 향상시키는 방법입니다.
이 API는 프로그래머가 사용 가능한 하드웨어를 완벽하게 알고있는 콘솔 GPU 사용의 효율성을 무한한 하드웨어 가능성으로 PC를 구성하는 이기종 에코 시스템에 가깝게 만들었습니다.
현재 DirectX 12는 놀랍게도 Windows 7 및 Windows 10에서 사용할 수 있으며 Xbox One과 직접 호환되지는 않지만 실제로는 기능의 90 %가 PC에 사용되지만 그 차이는 최소화되어 있습니다. 개발자는 Xbox One 용 PC 게임을 빠르게 적용 할 수 있으며 그 반대도 마찬가지입니다.
크로노스의 불칸
Vulkan 은 OpenGL의 저수준 API 로의 진화이며 Khronos Corporation에서 지원합니다. PC 세계에서는 DirectX 12보다 부차적 인 역할을 수행하지만 Android와 같은 다른 플랫폼에 대한 다양한 적응은 이동성 그래픽의 벤치 마크가되었습니다. 또한 무료 시스템에서 게임의 훌륭한 대안 인 Linux와 호환됩니다.
이 제품의 장점은 최신 병렬 처리 용량으로 최신 CPU 및 GPU에서 매우 효율적이며 전자를 적게 사용하고 후자의 하드웨어를 많이 사용한다는 것입니다. 이 유형의 프로세서에서 우수한 부하 분산을 달성하는 멀티 코어 프로세서를 활용하도록 특별히 설계되었으므로 실제로 더 많은 코어를 제공 할 수있을 때 훨씬 더 효율적입니다.
Vulkan의 역사는 DirectX 12와 비영리 회사 인 Khronos가 Microsoft가 자체 API를 사용하는 것보다 자주 또는 더 자주 유지 관리 한 후 1 년으로 거슬러 올라갑니다. AMD가 GCN 아키텍처를 위해 개발 한 API 맨틀 을 기반으로하며 "오버 헤드 드라이버"를 줄이기위한 또 다른 저수준 API였습니다. AMD는 개발을 Khronos에 기증했으며 이는 시장에서 최고의 그래픽 API 중 하나의 기초입니다.
뛰어난 병렬 처리 외에도이 디자인을 통해 GPU에서 음영 처리 작업의 사전 컴파일을 제거 할 수 있으며 하드웨어 처리 작업 방식 또는 액세스 방법에 대한 세부 조정 외에도 더 많은 효과와 더 높은 로딩 속도로 화면에서 화면에 표시 할 수 있습니다. 사용 가능한 프레임 버퍼. 하드웨어 자체에 가장 가까운 PC 용 API는 DirectX 12보다 훨씬 좋습니다.
Vulkan은 또한 Android 및 기타 플랫폼에서 저수준 API 개선을 도입했습니다.
2018 년 말에 출시 된 최신 버전 인 Vulkan 1.1은 HLSL 지원과 같은 중요한 개선 사항을 추가합니다. 이는 사전 컴파일없이 셰이더 작업을 관리하는 DirectX 12의 대안, DirectX 12와의 호환성 향상 (많은 서브 루틴에 대한) 그래픽과는 별도로) 제조업체에 관계없이 멀티 GPU 시스템을 명시 적으로 지원하고 물론 RayTracing을 지원합니다.
DirectX 12와 Vulkan의 장단점
하드웨어 사용, 하드웨어 제어 및 GPU와 CPU의 병렬화 사용과 같이 이미 설명한 일반적인 기능 외에도이 두 API는 그래픽 칩을 사용하여 일반 계산 작업을 수행 할 가능성을 추가합니다. 호환됩니다. 이를 통해 이미 수 세대에 걸쳐 호환되는 그래픽 엔진이 그래픽 구성 요소가없는 것을 포함하여 모든 종류의 프로그램에서 이용할 수있는 복잡한 수학 연산을 수행 할 수 있습니다.
게임에서는 실제 물리 계산, 인공 지능, 위치 음향 효과 등과 같이 점점 더 중요한 2 차 작업에도 사용할 수 있습니다.
두 API 모두 훌륭한 그래픽을 통해 큰 지원을 받고 있으며, AMD와 Nvidia는이 API에 적절한 드라이버를 제공하여 사용자에게 최신 개선 기능을 제공하고 하나를 사용하는 게임의 성능과 안정성을 강화하기 위해 노력하고 있습니다. 또는 다른 API.
두 테스트의 "드라이버 오버 헤드"는 실제로 매우 낮습니다. 테스트에서 볼 수 있듯이 두 제품 간의 차이점은 거의 없습니다. 이는 두 제조업체의 드라이버를 최적화하는 중요한 신호이기도합니다.
드라이버 오버 헤드 데모를 위해 프레임 속도를 120FPS로 제한했습니다. Dota 2에서는 동일한 FPS로 CPU 소비가 크게 줄어 듭니다.
가장 분명한 차이점은 Vulkan 이 평균 소비가 적고 CPU와의 종속성이 다소 낮으며 Windows 및 Linux를 포함한 다른 플랫폼에 훨씬 더 개방적이며 모바일 버전 인 OpenGL ES와의 균질화라는 것입니다. 그것이 이동하는 플랫폼을 더욱 통일시키는 것입니다.
DirectX 12 는이 API에서 수천 가지 불가사의를 통합하는.NET Framework와 같이 프레임 워크에 광범위하게 통합되어 있기 때문에이 API에서 비용을 절감 할 수있는 완벽한 에코 시스템을 찾는 개발자에게 큰 호응을 얻었습니다. 성능 손실이 거의 없습니다.
이중 API를 사용하는 게임의 성능 차이
보행을 통해 움직임이 입증됨에 따라 우리는 실행을 위해이 두 API를 사용할 수있는 여러 게임 및 벤치 마크에서 일부 성능 테스트를 수행했습니다.
3DMark 드라이버 오버 헤드 테스트. 수백만 건의 요청이 발생하면 많을수록 좋습니다.
특이점의 재. FPS 결과는 더 좋습니다.
이상한 여단. FPS 결과는 더 좋습니다.
우리는 당신이 관심을 가질만한 최고의 하드웨어 안내서를 요약합니다:
- 시장에서 최고의 프로세서 시장에서 최고의 마더 보드 시장에서 최고의 RAM 메모리 시장에서 최고의 그래픽 카드 시장에서 최고의 SSD 시장에서 더 나은 섀시 또는 PC 케이스 더 나은 전원 공급 장치 더 나은 방열판 및 액체 냉각기
보시다시피 결과는 고르고 프로그램마다 차이가 있습니다. 이것은 우리에게 어떤 질문이 더 낫고 정답이 분명한가를 남깁니다. 그것은 프로그램과 개발자가 그 이점을 알고 있거나 이용하는 방법에 달려 있습니다. 남아있는 것은 각 게임에서 개발자가 그래픽의 이점을 가장 잘 활용하는 API를 정확하게 사용할 것이라고 생각하는 것입니다. 두 옵션 모두 유능한 것보다 더 확실합니다. Directx 12 vs Vulkan 에 대한 기사에 대해 어떻게 생각하십니까? 우리는 당신의 의견을 알고 싶습니다!
Metro exodus는 뛰어난 그래픽 품질로 그래픽 카드를 땀을 흘릴 것입니다.
Metro Exodus는 그래픽 품질의 새로운 벤치 마크가 되고자합니다. 높은 수요로 인해 게임은 새로운 크라이시스가 될 수 있습니다.
통합 그래픽 카드 또는 전용 그래픽 카드?
통합 그래픽 카드와 전용 그래픽 카드의 차이점을 설명합니다. 또한 우리는 HD 해상도, Full HD로 게임에서 성능을 보여 주었으며 그 가치는 그 가치가 있습니다.
Crytek의 cryengine v 그래픽 엔진에는 vulkan 및 directx 레이트 레이싱 지원
Crytek은 새로운 CryEngine V 그래픽 엔진의 기능을 선보여 Hunt : Shodown 비디오 게임 데모를 시연했습니다.