본문으로 이동

미디어위키 1.45 안정화가 거의 끝났습니다. 다만 Flow 확장 기능 관련 이슈가 있어서 대체하는 작업을 수행할 계획입니다.

  1. 큰숲백과:청사진에서 위키 발전의 대략적인 방향성을 제시했습니다. 의견이 있으신 분은 큰숲백과토론:청사진에서 의견을 남겨주시면 좋겠습니다.
  2. 기능상의 오류로 지원하지 않고 있는 기능에 대해서는 큰숲백과토론:이슈 트래커에 요약했습니다. 참고하시기 바랍니다.
  3. 데이터베이스 덤프 받고싶으신 분은 큰숲백과 가입 후에 사용자토론:Bigforest에 의견 남겨주시면 ftp 주소, 계정, 비밀번호를 특수:EmailUser를 통해서 공개할 예정입니다.

Vulkan

큰숲백과, 나무를 보지 말고 큰 숲을 보라.


Vulkan은 2016년 2월 16일 OpenGL을 관리하던 크로노스 그룹이 발표한 최신 컴퓨터 그래픽스 API(Application Progamming Interface)이다.

개발 배경

[편집 | 원본 편집]

2014년 크로노스는 OpenGL을 대신하여 그래픽 카드 하드웨어에 직접 접근하는 로우 레벨 그래픽스 API를 준비하게 된다. 그 이유는 1년 전 AMD에서 개발한 Mantle(맨틀)이란 그래픽스 API 때문이었다.

맨틀 API 이전에는 모든 그래픽 카드/내장 그래픽 칩셋이 직접 OpenGL에서 정의한 규격에 따른 API를 직접 제공해야 했다. 그러나 AMD는 자사의 낮은 디바이스 드라이버 성능이 늘 그래픽 카드의 최대 성능을 깎아왔던 문제가 있었고, 이에 OpenGL과 별도로 그래픽 하드웨어 내 유닛에 대한 접근을 더 폭넓게 허용하면 자사의 그래픽 카드 성능을 제대로 소비자가 체감할 수 있을 것이라고 판단하고 맨틀 API를 준비하였고 Mantle API의 파트너 개발사가 EA(정확히는 EA DICE 스튜디오)였기 때문에, 프로스트바이트 3 게임 엔진을 사용한 게임들이 시연 대상이 되었다.

이후 이 API를 기초로 크로노스 그룹이 만든 그래픽스 API가 Vulkan이다. 이와 동시에 OpenGL은 신규 표준 개발이 중지되었고, 이에 따라 2020년대에도 OpenGL 최신 버전은 4.6에 멈춰 있다. 마이크로소프트도 이에 대응해 DirectX 12를 공개하여 하드웨어 직접 접근 그래픽스 API를 추가하였다.

  • SPIR-V라는 바이트 코드를 기반으로 하드웨어에 직접 접근해야 한다.
    • 이에 따라 셰이더 언어를 가리지 않는다. 따라서 기존에 크로노스 그룹이 관리하던 GLSL 외에 DirectX 전용 셰이더 언어인 HLSL을 써도 문제가 없도록 SPIR-V로 바꾸는 툴체인이 있다.
  • OpenGL이 모바일/임베디드 환경에서는 상당히 무겁기에 OpenGL ES가 따로 발표된 것과 달리, Vulkan은 데스크탑/랩톱 컴퓨터 환경과 모바일/임베디드 시스템 환경을 동시에 고려한다.[1]
  • 1.3 버전부터 실시간 레이트레이싱 API 명세가 있다.

현재 리눅스 쪽에서는 Mesa 프로젝트를 통해 Vulkan API가 지원되며, 오픈 소스로 바닥부터 그 위의 프레임워크까지 공개되는 디바이스 드라이버가 대체로 그렇듯이 성능이 상당히 좋다.

AMD의 라데온 그래픽 카드가 NVIDIA의 대응 제품과 비교했을 때 그나마 성능이 견줄 만한 수준으로 올라오는 그래픽스 API다. OpenGL을 사용할 경우는 2020년대가 한창 지나가는 지금도 NVIDIA의 그래픽 카드들에 비해 많이 성능이 나쁘다.

  1. ↑ 다만 이로 인해 OpenGL ES에 기반한 WebGL에는 대응을 못했으며, W3C와 구글을 중심으로 여기 대응하기로 하여 WebGPU라는 브라우저 API 표준을 개발하여 2024년 현재에도 초안 작성을 하고 있다.