벌컨 (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은 컨텍스트 관리, 표면 바인딩, 렌더링 동기화를 관리한다.

호환성

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

각주 

 내용주

외부 링크 
  Vulkan 1.0 specification

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