티스토리 뷰

스마트폰용 애플리케이션 프로세서(Application Processor; AP)의 성능이 좋아지면서 덩달아 함께 좋아진 존재가 있습니다. 바로 GPU(Graphics Processing Unit)죠. 모바일 기기에서 그래픽 처리를 담당하는 GPU로는 Arm의 Mali나 Imagination의 PowerVR, Qualcomm의 Adreno 등이 있고, 이들의 경쟁 또한 치열합니다. 하지만 이들만 있어서는 제대로 그래픽을 구현하지 못하죠.

서로 다른 GPU지만 GPU 하드웨어와 개발자의 소프트웨어를 연결해주는 표준 그래픽 라이브러리가 있어야 합니다. 게임을 좋아하시는 분들이라면 들어봤을 DirectX가 바로 그런 라이브러리입니다. 그런데 DirectX는 PC에서 주로 쓰이고 모바일 환경에서는 그동안 OpenGL ES가 쓰였습니다. 여기서 ES는 Embedded Systems의 약자로 보다 가벼운 하드웨어 제원에 맞춰져 있다는 뜻입니다.


그런데 요즘 새로 들리는 이름이 있습니다. 바로 Vulkan이죠.



Vulkan?


벌칸[각주:1]은 차세대 OpenGL의 이름입니다. 하드웨어 성능에 따라 범용의 OpenGL과 더 가볍게 만든 OpenGL ES로 나눠졌던 전과는 달리 PC, 모바일 기기를 비롯하여 최근 각광받고 있는 VR 제품 등 다양한 디바이스까지 망라하는 진정한 크로스 플랫폼 그래픽 라이브러리로 재탄생했습니다. 하드웨어에 직접 접근하여 불필요한 낭비를 줄이면서 성능을 최대한 살릴 수 있어 기업들의 호응도 뜨거운데 AMD, 인텔, 퀄컴, ARM, 이미지내이션, PowerVR, 엔비디아, 에픽 게임스 등 다양한 기업이 참여 중입니다.



안드로이드의 구글 또한 7.0 누가부터 지원하기로 했지만, 삼성전자는 독특하게도 이미 안드로이드 6.0부터 갤럭시 S7 시리즈를 통해 진작부터 지원하기로 천명했고, 지난 4월 업데이트를 통해 스마트폰 최초로 벌칸을 지원하게 되었습니다.




벌칸을 지원하는 게임들


다만 라이브러리가 만들어졌어도 이를 위한 소프트웨어가 만들어지는데에는 시간이 필요하죠. 아직까지 안드로이드에서 벌칸을 제대로 지원하는 애플리케이션은 별로 없고 이용자 또한 이를 체감하기 조금 힘듭니다.

아무래도 처음 발을 내딛은 만큼 삼성전자가 총대를 매고 나선 듯 합니다. 지난 6월 E3를 통해 삼성전자가 공개한 아래 영상을 한번 보시죠.



Need for Speed™ No Limits와 HIT, 그리고 VainGlory가 갤럭시 S7에서 벌칸을 지원하는 예로 나옵니다. 하지만 니드포스피드나 HIT는 벌칸을 게임의 일부에만 적용한 것으로 알려져 있습니다. 그래서 오늘 벌칸을 맛보기 위해 고른 게임은 바로 베인글로리입니다. 




VAINGLORY



베인글로리는 Super Evil Megacorp가 만든 MOBA, 또는 AOS라고 부르는 장르의 게임입니다. 장르의 특성상 많은 캐릭터가 한 화면에 등장하고 역동적인 변화가 많은 만큼 그래픽 성능 또한 중요하죠.



게다가 슈퍼이블메가코프는 VG: Vulkan Beta라는 이름으로 베인글로리의 본 게임과는 별개로 벌컨을 채용한 베타 버전을 따로 운용 중입니다. 그래서 두 게임의 비교가 더 쉬웠죠. 다만 두 게임을 모두 설치는 할 수 있는데 실행은 되지 않습니다. 원활한 실행을 위해서라면 한 버전을 실행하려면 다른 버전은 지워야 합니다.


다른 말은 필요없이 간단하게 영상으로 살펴볼까요?



어떠신가요? 영상은 아쉽게도 갤럭시 S7/엣지에서 Game Tools로 1080p/6Mbps로 촬영했기 때문에 한계가 있긴 하지만 베인글로리의 정식판과 벌칸 베타 버전은 확실히 몇가지 차이점이 느껴집니다.


우선 벌칸 베타 버전의 경우 기존판 대비 전반적으로 초당 프레임 수가 높아진 것을 느낄 수 있습니다. 움직임이 부드러워졌다는 이야기죠. 게임성에 지장을 줄 정도는 아니지만 전반적으로 자연스럽게 그래픽이 흘러가는 것을 느낄 수 있습니다. 다만 베타 버전인 만큼 어쩌다 초당 프레임 수가 확 줄어든 경우가 있기는 했습니다.


OpenGL ES를 쓰는 정식판


Vulkan을 쓰는 베타판


다만 화면의 그래픽 품질 자체는 벌칸 베타판에서 그리 달라진 것 같지는 않습니다. 제가 발견하지 못했을 수도 있겠지만 비교 시험 중 두 버전의 그래픽 차이는 찾기 힘들었습니다.



왼쪽이 원래의 정식판, 오른쪽이 벌칸 베타버전입니다. 원래의 2560x1440 해상도에서 캡쳐하여 옮겨다 놓은 것입니다. 여러분은 어떠실지 모르겠지만 개발사인 슈퍼이블 메가코프는 그래픽의 품질 면에서 두 버전 사이에서 표현의 차이를 만들지는 않은 것 같습니다. 아무래도 벌칸이 도입된지 얼마 안 되었으니 최적화에 집중했을 가능성이 높습니다.


다만 미묘한 변경은 존재합니다. 예를 들어 캐릭터를 보는 각도와 자세, 상태바와의 배치 등에서 약간의 차이를 발견할 수 있습니다. 이는 베인글로리의 업그레이드 방향을 벌칸 베타판이 미리 구현하고 있다고 생각해도 좋을지 모르겠습니다.





지금까지 갤럭시 S7/엣지가 지원하는 벌칸 API의 위력을 베인글로리를 통해 간단하게나마 살펴봤습니다. 아직은 초기 단계긴 하지만 확실히 벌칸의 위력은 감지할만한 수준이었습니다. 벌칸이 앞으로 다양한 그래픽 애플리케이션에서 어느 정도의 역할을 할지, 그리고 갤럭시 S7/엣지는 얼마나 이를 잘 처리해줄지 지켜봐야겠습니다.




1sd네임택_쭌스.jpg

  1. Vulkan은 벌컨, 벌칸, 불칸 등으로 표기하고 있습니다만 최근에는 벌칸 쪽으로 많이 하고 있어 이쪽을 따랐습니다. [본문으로]