애플판 다이렉트X '메탈', 오픈GL에 사망선고?

iOS 개발자들의 행보 관심집중

일반입력 :2014/06/05 11:38

애플이 3D그래픽라이브러리 산업표준인 '오픈GL(OpenGL)'의 생태계를 파괴할 것인가? 애플이 iOS8에 '메탈(Metal)'이라는 자체 기술을 탑재하면서 그간 아이폰과 아이패드에서 지원하던 업계 표준을 버리고, 개발자들을 독점적인 3D 기술의 울타리에 가둘 것이란 관측이 나오고 있다.

메탈이라는 iOS용 새 3D그래픽 애플리케이션프로그래밍인터페이스(API)가 오픈GL에 어떻게 악재로 작용한다는 것일까?

메탈은 애플이 iOS 기기의 3D그래픽 성능과 품질을 개선해 아이폰과 아이패드용 게임 경쟁력을 키우려고 만든 API다. 최신 모바일 운영체제(OS) iOS8에서 지원한다. 애플은 메탈API의 결과물이 자사 최신 프로세서 A7와 만나면 더 나은 성능을 보여줄 수 있다고 강조했다.

애플이 이런 식으로 메탈을 iOS 기본 그래픽 기술로 밀어 준다면 오픈GL은 소외당할 가능성이 상대적으로 높아진다. 컴퓨팅 파워가 제한적인 모바일 플랫폼이 별도 지원하는 고성능 3D그래픽 라이브러리가 있다면, 성능을 중시할 수밖에 없는 3D 게임 개발자 입장에선 메탈을 쓰지 않고 버티기 어렵다.

실제로 다이렉트X 공동개발자 3명 가운데 한 사람인 알렉스 세인트 존은 지난 3일 자신의 블로그에 '오픈GL을 버린 애플(Apple Ditching OpenGL)?'이라는 제목의 포스팅을 게재했다. 그 내용은 애플의 메탈이라는 존재가 오픈GL에 타격을 줄 수 있는 이유와 장기적인 3D기술 생태계 판도 변화에 대한 전망을 포함했다.

미국 주간지 타임(Time) 온라인판은 4일(현지시각) 존의 글에서 오픈GL과 메탈의 성격을 나름대로 규정한 존의 글에 담긴 7가지 주장을 요약하며 다이렉트X 제작자가 말하길 애플의 메탈은 오픈GL의 종말을 고하는 전령사라는 제목으로 보도했다. 그 7가지 주장이란 다음과 같다.

첫째, 오픈GL 드라이버는 표준 하드웨어를 정의하지 않고는 파편적이고 일관되지 않은 기능성을 쓸어담은 주머니에 불과하다. 달리 말해 컴퓨터의 그래픽 및 연산 프로세서와 메인보드 등을 일정한 틀에 맞춰 제품을 만들지 않을 경우 오픈GL로 안정적인 효율과 성능을 얻기 어렵다는 얘기다.

둘째, 애플은 기존 모바일 산업 환경에서 오픈GL 규격을 제정하는 데 많은 책임을 맡고 있었다. 이는 애플이 그동안 스마트폰 시장에 많은 아이폰을 공급해 오면서, MS의 윈도에서만 돌아가는 다이렉트X API처럼 자체 단말기나 플랫폼에 종속적인 기술을 내놓은 적이 없었던 공로가 크게 작용했다.

셋째, 하지만 애플은 오픈GL을 지원하느라, 게임 개발자들이 iOS와 안드로이드라는 양대 플랫폼을 넘나들기 쉽게 만들어 버렸다. 이런 측면에서 메탈과 같은 독점적인 API는 애플이 자사 하드웨어에 최적화된 결과물을 만들고 싶어하는 개발자들을 고립시키는 역할을 할 수 있다.

넷째, 현재 시중의 GPU는 발전이 더딘 CPU 기술에 발목을 잡히고 있을 정도로 빠른 성능을 보여 준다. 또한 '번잡스러운(bloated)' 기존 3D그래픽 API 역시 최신 기술에 기반한 GPU의 성능을 제대로 발휘하는 데 도움을 주지 못하는 요소다.

다섯째, 3D게임 기술의 발전사에선 주로 (실감나는 것을 표현하는) 물리 모델링보다 공간과 물체의 추상화에 초점이 모인다. 그런데 추상화 자체는 3D 개발에 장애가 된다. 개발자가 실감나는 물리적인 특성을 재현하는 것과 속임수를 써서 그럴듯하게 보이도록 만드는 것, 2가지 방식을 분리해내야 하기 때문이다. 여기서 실감나는 쪽은 광원 물리 모델링을, 속임수를 써서 그럴듯하게 보이는 쪽은 그외 물체 모델링을 가리킨다.

존은 현대 게임 개발 환경에서 '광원 물리(모델링)'와 '그밖의 물리(모델링)'간 연결고리는 매우 어그러져 있는데, 이유는 그래픽 파이프라인이 물리 시뮬레이션의 시각적 요소를 과도하게 추상화하기 때문이라며 이런 시뮬레이션은 개발자들에게 게임 안에서 동떨어진 이 2가지를 다시 어설프게 짜맞추도록 강제해 이뤄진다고 설명했다.

여섯째, 가상 세계를 렌더링하는 데 쓰이는 클라우드 기반 병렬주의 기법은 향후 클라이언트 쪽에서만큼 빠르지는 않은 고속처리용 기술이 될 수도 있다. 실제로 우리는 이미 원격 서버에서 렌더링한 뒤 클라이언트 애플리케이션에 실시간으로 삽입되는 시각 요소를 활용하는 게임의 시연을 접해 왔다.

일곱째, 점차 엔비디아 쿠다(CUDA)처럼 개발자들이 GPU 병렬주의 기법을 직접 활용하게 만드는 사례가 미래에 늘어날 것으로 보인다.

관련기사

이에 대해 존은 다른 게임 커뮤니티가 (AMD) 맨틀, (MS) 다이렉트X12, (애플) 메탈을 도입하려고 애쓰는 반면 나는 광선추적, 양자물리학 같은 걸 다시 배우고 있다며 결국 이런 모든 방식이 클라우드 기반 게임 디자인을 위해 CUDA같은 API로 수렴할 것이라 보기 때문이라고 말했다.

타임 온라인판은 존이 메탈 때문에 오픈GL의 미래가 없어졌다고 단정한 건 아니지만 다이렉트X와 오픈GL이 시간의 흐름에 따라 CUDA를 뒤따르는 모양이 될 수 있다는 식으로, 향후 3D그래픽 처리 기술의 판도가 크게 달라질 수 있음은 인정했다고 평했다.