벌컨 (API)

벌컨(Vulkan)은 오버헤드가 적은 크로스 플랫폼 3D 그래픽스 및 컴퓨팅 API이다. 이는 GDC 2015에서 크로노스 그룹에 의해 처음으로 소개되었다.

초기의 Vulkan API는 OpenGL의 차세대 버전으로 준비되었는데, 현재는 "OpenGL"이라는 이름을 이어가지 않고 Vulkan이라는 이름으로 결정되었다.

OpenGL처럼 Vulkan은 게임이나 상호작용성 미디어와 같은 고성능 실시간 3D 그래픽스 애플리케이션을 모든 플랫폼에서 고성능으로 CPU를 적게 사용하도록 개발하는 것을 목표로 만들어진 API이며 마이크로소프트의 Direct3D 12, 애플의 메탈, AMD의 맨틀과 같은 성격의 API이다. CPU 사용량에 대해서 더 이야기 하자면 Vulkan은 멀티 코어 CPU의 여러 코어 사이에 로드를 더 잘 분배할 수 있다.

 역사 
크로노스 그룹은 2014년 7월 차세대 그래픽스 API를 만들기 위한 프로젝트를 시작하였으며, 이는 밸브 코퍼레이션의 킥오프 미팅과 함께한다. SIGGRAPH 2014에서 이 프로젝트는 참여자들의 요청에 따라 공개 발표되었다.

 벌컨을 지원하는 소프트웨어 
 비디오 게임 

 The Talos Principle - 벌컨 렌더링을 지원하는 최초의 게임.
 도타 2 - 2016년 5월 벌컨 지원을 공개.
 둠 - 2016년 7월 벌컨 지원을 공개.
 vkQuake - 벌컨 퀘이크 이식을 2016년 7월 공개.
 Roblox - 2017년 3월, Roblox를 위한 벌컨 지원이 추가됨.
 Star Citizen - 2017년 3월, 클라우드 임페리엄 게임즈의 그래픽스 프로그래밍 감독 Alistair Brown은 공식 스타 시티즌 포럼에서 클라우드 임페리엄이 이제 스타 시티즌과 Squadron 42에 벌컨 구현을 집중할 것이라고 발표하였다. DirectX 지원은 중단될 것인데, 이는 고객들이 윈도우 10을 사용하도록 강제하기 때문이다.
 매드 맥스 - 2017년 3월, 개발자들은 리눅스 포팅으로 예외적으로 벌컨의 베타 지원을 추가하였다.
 Ballistic Overkill - 2017년 5월 벌컨 지원을 공개.
 Quake III Arena Kenny Edition - 퀘이크 3 엔진 모드(mod)가 2017년 5월 벌컨 지원을 추가.
 Ashes of the Singularity: Escalation - 차기작에 벌컨 지원 추가 예정.
 vkDoom3 - Doom3 BFG의 벌컨 포팅 지원을 2017년 8월 공개.
 Wolfenstein II: The New Colossus - 벌컨만 지원. 2017년 런칭.
 X4: Foundations - 벌컨 전용 그래픽스 엔진과 함께 2018년 런칭 예정
 X-Plane 11 - Laminar Research는 2017년 하반기에 OpenGL에서 벌컨으로 이동할 예정이며, 테스트는 2018년에 시작.
 레드 데드 리뎀션 2/레드 데드 온라인 - 처음 공개후, 베타 테스트때 추가되었다.

 게임 콘솔 에뮬레이터 
 Beetle/Mednafen PSX, Mednafen PlayStation의 Libretro 포팅
 돌핀
 Mupen64Plus의 Libretro 포팅
 RPCS3
 PPSSPP
 Xenia

 게임 엔진 
 소스 - 2015년 3월, 밸브 코퍼레이션은 소스 2 엔진을 발표하였으며 이는 오리지널 소스 엔진의 뒤를 이으며 벌컨을 지원한다.
 시리어스 엔진 4 - 2016년 2월, Croteam은 시리어스 엔진에 벌컨을 지원하고 있었다고 발표하였다.
 언리얼 엔진 - 2016년 2월, 에픽게임즈는 언리얼 엔진 4가 삼성그룹의 삼성 갤럭시 S7 언팩 행사에서 벌컨을 지원할 것임을 발표하였다.
 토크 - 2016년 4월, 개발자 공동체는 벌컨 지원 포함을 발표하였다.
 퀘이크 엔진 - 2016년 7월 벌컨 지원이 추가되었다.
 id Tech 3 - 2017년 5월 벌컨 지원이 추가되었다.
 id Tech 4 - 2017년 8월 벌컨 지원이 추가되었다.
 id Tech 6 - 2016년 5월, 이드 소프트웨어는 테크 6 엔진을 구동하는 둠이 벌컨을 지원할 것이라 발표하였다.
 Xenko - 2016년 7월 벌컨 지원이 추가되었다.
 유니티 - 이 엔진은 버전 5.6부터 벌컨 지원이 추가되었다.
 크라이엔진 - 5.4 릴리스에 벌컨 지원이 추가되었다.
 Intrinsic - 벌컨을 지원하는 자유-오픈 소스 크로스 플랫폼 게임 엔진.
 Unigine - 2017년 4월, Unigine Corp는 Unigine의 벌컨 지원이 2017년 로드맵에 있다고 발표하였다.
 Abyss Engine - 2017년 5월, 딥 실버 FISHLABS는 벌컨을 지원하는 안드로이드에 갤럭시 온 파이어 3를 출시하였다.
 Banshee 3D - 벌컨을 지원하는 자유-오픈 소스 크로스 플랫폼 게임 엔진.
 Godot - 2차원, 3차원 크로스 플랫폼 오픈 소스, 게임 엔진. 2018년 2월 말에 개발자들은 모든 플랫폼을 대상으로 OpenGL ES 3만을 사용하지 않고 OpenGL ES 2와 벌컨을 혼합하여 사용하겠다고 발표하였다.
 RAGE - 레드 데드 리뎀션 2에서 지원하고 있다.

 렌더링 엔진 
 UX3D Engine - 2017년 9월 벌컨 지원이 추가되었다.

 개발 도구 
 GPU PerfStudio 3.6은 리눅스, 윈도우에서 벌컨을 지원한다.
 GTK+ Scene Graph Kit은 GTK+ 3.90의 일부로서 2017년 3월 출시되었으며 벌컨 렌더링 경로를 포함한다.
 RenderDoc은 벌컨을 지원하며, 그 추가 시점은 2016년 2월 10일이다.

 운영 체제 구성 요소 
벌컨 윈도우 시스템 통합(Vulkan Window System Integration, WSI)은 EGL이 OpenGL ES를 위해 하는 것과 동일한 것을 벌컨을 위해 한다. EGL은 네이티브 플랫폼 윈도잉 시스템과 통신할 목적으로 OpenGL ES 프로그램에 쓰인다. EGL은 컨텍스트 관리, 표면 바인딩, 렌더링 동기화를 관리한다.

 호환성 
 기업 하드웨어 소프트웨어 지원: Vulkan 1.0 마이크로아키텍처 이용 가능 시점 GPU (칩) 그래픽 카드 / SoC 안드로이드 리눅스 마이크로소프트 윈도우 AMD GCN 5th 2017년 8월 Vega 10 Radeon Rx Vega series rowspan="5"  rowspan="3" & RADV in 메사 rowspan="5"  GCN 4th 2016년 6월 Polaris 10, Polaris 11, Polaris 12 Radeon Rx 400 series GCN 3rd 2014년 8월 Tonga, Fiji, Carrizo Radeon R9 Series GCN 2nd 2013년 3월 Bonaire, Hawaii, Kaveri, Kabini, Temash, Mullins, Beema, Carrizo-L Radeon HD 7790, 플레이스테이션 4, 엑스박스 원 rowspan="2"  GCN 1st 2012년 1월 Oland, Cape Verde, Pitcairn, Tahiti Radeon HD 77xx-7900 Series TeraScale 3 2010년 12월 Cayman, Trinity/Richland Radeon HD 69xx Series, Radeon HD 7xxx-76xx Series rowspan="3" colspan="3"  TeraScale 2 2009년 9월 Cedar, Cypress, Juniper, Redwood, Palm, Sumo 라데온 HD 5000 시리즈, Radeon HD 6350, Radeon HD 64xx-68xx Series TeraScale 1 2007년 5월 R600, RV630, RV610, RV790, RV770, … 라데온 HD 2000 시리즈, HD 3000, HD 4000 Nvidia 볼타 December 2017 GV10x Nvidia Titan V   파스칼 2016년 5월 GP10x 지포스 10 시리즈, Tegra X2 rowspan="3"  rowspan="3" style="text-align: center"  rowspan="3" style="text-align: center"  맥스웰 2014년 2월 GM10x, GM20x GeForce GTX 750 Ti, GTX 750, GTX 860M, 지포스 900 시리즈, 엔비디아 테그라 케플러 2012년 3월 GK10x, GK110, GK208 지포스 600 시리즈, 지포스 700 시리즈, 엔비디아 테그라 페르미 2010년 3월 GF10x, GF11x 지포스 400 시리즈, 지포스 500 시리즈 rowspan="2" colspan="3"  테슬라 2006년 11월 G8x, G9x, GT20x, GT21x 지포스 8 시리즈, 지포스 9 시리즈, 지포스 100 시리즈, 지포스 200 시리즈, 지포스 300 시리즈 Intel커피레이크 2017년 10월Core i3-/i5-/i7-8000, Kaby Lake 2016년 9월  Core i3-/i5-/i7-7000, Pentium xyz, Celeron xyz rowspan="5"  rowspan="5"  rowspan="2"  Skylake 2015년 8월 Core i3-/i5-/i7-6000, Core m3-/m5-/m7-6Yxx, Pentium G4xxx, Celeron G39xx Broadwell 2014년 9월 Core i3-/i5-/i7-5000, Core M-5Yxx rowspan="5"  Haswell 2013년 6월 Core i3-/i5-/i7-4000, Pentium G3xxx, Celeron G18xx Ivy Bridge 2012년 4월 Core i3-/i5-/i7-3000, Pentium G2xxx, Celeron G16xx Sandy Bridge 2011년 1월 Core i3-/i5-/i7-2000, Pentium Gxxx, Celeron Gxxx rowspan="2"  rowspan="2"  Westmere 2010년 1월 Core i3-/i5-/i7-xxx, Pentium G69xx, Celeron G1101 Imagination Technologies 파워VR Series 8 2016년 2월 GE8200, GE8300 rowspan="3" colspan="3"  PowerVR Series 7 2014년 11월 GE7400, GE7800, GT7200, GT7400, GT7600, GT7800, GT7900 Apple A9, A9X, A10 Fusion, Helio X30 (MT6799) PowerVR Series 6 2012년 1월 G6100, G6200, G6230, G6400, G6430, G6630, RK3368, G6050, G6060, G6100 (XE), G6110, GX6240, GX6250, GX6450, GX6650 Apple A7, A8, A8X, MediaTek MT8173, MT8176, MediaTek MT6595M, MT6595T, MT6595M, MT6795, MT8135, Helio X10 (MT6795), LG H13, Atom Z3460, Z3480, Z3530, Z3560, Z3570, Z3580 PowerVR Series 5 2009년 1월 SGX543, SGX544, SGX554 Apple S1, A5, A5X, A6, A6X, NovaThor L8540, L8580, L9540, TI OMAP 4470, 5430, 5432, MediaTek MT5327, MT6589M, MT6589T, MT6589, MT8117, MT8121, MT8125, MT8389, Atom Z2460, Z2520, Z2560, Z2580, Z2760, Exynos 5410 colspan="3"  Qualcomm 아드레노 500 series Adreno 510, Adreno 530, Adreno 540, adreno 506 Snapdragon 430, 625, 650, 652, 820, 821, 835, 450 colspan="3"  Adreno 400 seriesAdreno 418,Adreno 420,Adreno 430, Snapdragon 415, 615, 616, 617, 805, 808, 810 colspan="3"  Adreno 300 series Snapdragon 200, 208, 210, 212, 400, 410, 412, 600, 800, 801 colspan="3"  ARM Bifrost 2016년 6월 Mali-G71, … Kirin 960, 970, Exynos 8895, MediaTek Helio P23 (MT6763T), Helio P30 colspan="3" rowspan="3"  Midgard 4th Q4 2015 Mali-T860, Mali-T830, Mali-T880 Exynos 8890, Exynos7880, Exynos 7870, Kirin 950, 955, MediaTek MT6738, MT6750, Helio X20 (MT6797), X25 (MT6797T), P10 (MT6755), P20 (MT6757) Midgard 3rd 2013년 10월 Mali-T760, … Exynos 7420, Exynos 5433, MT6752, MT6732, RK3288 Midgard 2nd 2012년 8월 Mali-T600 series, T720 Exynos 5250, 5260, 5410, 5420, 5422, 5430, 5800, 7580, Mediatek MT6735, MT6753, Kirin 920, 925, 930, 935 colspan="3" 

 같이 보기 
 Direct3D - 벌컨의 주 경쟁 API
 OpenGL - 크로노스 그룹의 다른 그래픽스 API
 OpenCL - 크로노스 그룹의 이기종 컴퓨팅 프레임워크
 맨틀 - 벌컨의 재단 AMD의 낮은 수준의 그래픽스 및 연산 API
 메탈 - iOS와 macOS용의 낮은 수준의 그래픽스 및 연산 API
 AMDGPU - AMD의 리눅스용의 완전한 오픈 소스 통합 그래픽스 드라이버

 각주 

 내용주

 외부 링크 


분류:크로스 플랫폼 소프트웨어
분류:그래픽 라이브러리
분류:그래픽 표준
분류:비디오 게임 개발
분류:가상 현실
분류:2015년 소프트웨어
분류:3차원 그래픽스 API