EMBEDDED BASICS

[테크월드=정환용 기자] 위 사진은 지난 5월 소니의 게임 콘솔 플레이스테이션 4로 출시된 퀀틱드림(Quantic Dream)의 신작 게임 ‘디트로이트 비컴 휴먼’(Detroit Become Human)의 홍보 영상 중 하나다. 사진 속의 인물은 사람이 아니라 작중 로봇 제조사 사이버라이프가 만든 개인 비서 안드로이드 ‘클로이’로, 배경인 2024년 처음으로 튜링 테스트를 통과한 로봇이다.

100초 정도의 짧은 이 영상은 자막부터 배경까지 모두 실존하지 않는 3D 컴퓨터 그래픽이다. 기획에서 시작해 애니매틱스, 캡쳐, 모델링, 텍스처 매핑, 애니메이션, 조명, 렌더링, 음향 등 수많은 과정을 거쳐 하나의 콘텐츠가 만들어진다. 위에 소개한 게임 역시 실제 배우들이 직접 연기하는 것을 센서로 캡처하는 모션 캡처 기술을 이용해 제작됐다. 얼핏 보면 실사와 구분하기 어려울 만큼 그래픽 기술이 발전하고 있다.

컴퓨터그래픽(Computer Graphics, 이하 CG)은 컴퓨터로 만들 수 있는 모든 창의적 이미지 기술을 총칭한다. 해외나 영화, 게임 등 문화 업계에선 CG보다 CGI(Computer Generated Imagery)란 약자를 더 많이 사용하며, 인간이 직접 경험하거나 구현하기 어려운 부분을 컴퓨터로 그래픽 이미지를 이용해 만들어내는 작업으로 활용하고 있다. 지난 1940년대 미국의 군사용 시뮬레이션 컴퓨터에서 출발한 CG는, 현재 컴퓨터를 이용하는 거의 모든 분야에서 활발하게 사용되고 있으며, 빠르게 연구∙개발이 이뤄지는 분야기도 하다. 첫 그래픽 프로그램부터 화려하고 실감나는 게임을 구성하는 3D 그래픽까지, CG 기술이 어떻게 발전해 왔는지 알아보자.

 

CG의 시작, 컴퓨터로 그림 그리기
CG의 시작은 단어 그대로 컴퓨터다. 에니악 이후 1980년대에 개인용 컴퓨터가 보급되기 시작하면서, 사용자들은 인간의 끊임없는 욕심에 따라 ‘더 나은’ 사용 환경을 요구하기 시작했다. 아직 1가구 1PC가 보편화되기 전인 1980년대 후반의 PC 인터페이스는 점과 선의 조합이 전부였고, 문화산업, 특히 영화에서 말하는 특수효과는 CG보다는 서로 다른 장면을 자연스레 조합하는 것에 초점이 맞춰져 있었다.

▲1963년 미국의 컴퓨터 과학자 이반 서덜랜드(Ivan Sutherland)는 MIT에서 박사학위 논문 ‘인간과 기계의 그래픽 커뮤니케이션 시스템, 스케치패드‘(SketchPad: A Man-Machine Graphical Communication System)를 발표한다. 여기서 소개된 프로그램 스케치패드는 라이트 펜으로 선을 그릴 수 있고, 회전이나 복사, 확대, 축소도 가능했다. 이는 현재까지 폭넓게 사용되고 있는 CAD와 그래픽 프로그램의 시초다.

문서 프로그램에서 키보드로 숫자 ‘1’을 누르면 화면에 해당 숫자가 표시된다. 엄밀히 따지면 이것 역시 CG의 일부로, 화면 속 정해진 프로그램 속의 정해진 위치에 수많은 픽셀들이 1이란 숫자를 표현하기 위해 변환되는 것이다. 초창기의 PC 게임 ‘퐁’(Pong)의 그래픽을 자세히 보면 네모밖에 보이지 않는데, 당시 컴퓨터로 표현할 수 있는 그래픽에는 한계가 있었기 때문에 그래픽 디자인보다는 동작 여부에 더 집중했던 결과다.

‘퐁’에 적용된 그래픽의 원초적인 동작 원리는 사실 현재의 화려한 게임 그래픽과 큰 차이가 없다. 공이 튕겨나가는 듯한 액션은 ‘공’이라고 지정된 피사체가 각도에 따라 이동하는 경로를 계산하고, 해당 경로의 픽셀을 흰색으로 켰다가 끄는 것이다. 당시 디스플레이(CRT 모니터)는 픽셀의 크기가 커서 표현할 수 있는 그래픽에 한계가 명백했고, 움직이는 그래픽을 표현하기 위해 요구되는 연산속도도, 286 컴퓨터의 6MHz 정도로는 움직임의 정교함을 살리기엔 부족했다.

그래픽의 발전은 2가지 하드웨어의 발전과 궤를 함께 했다. 기본적으로 사용할 수 있는 자원의 양, 즉 프로세서의 동작 속도가 첫 번째였고, 이를 출력할 수 있는 디스플레이의 해상도가 두 번째다. CPU의 연산속도가 GHz 단위로 올라가면서 구현할 수 있는 그래픽에 정교함이 더해졌고, 모니터가 CRT의 전자총 방식에서 OLED의 소자 발광식으로 바뀌며 픽셀의 크기가 작아지고 해상도가 높아졌다. A3 크기의 투박한 스케치북에 그리던 그림을 매끄러운 전지에 그릴 수 있게 되고, 사용할 수 있는 컬러도 1비트 단색에서 8비트 256색을 거쳐 24비트 트루 컬러로 1600만 이상으로 확장됐다.

 

색을 얻은 CG, 3차원의 날개를 달다
2차원의 평면에 그래픽을 구현하는 것은 아직 갈 길이 멀다. 3D 안경을 착용하고 보는 영화나 3D 그래픽의 게임, VR 기기 등 3차원 그래픽을 표현하는 기술을 나날이 발전하고 있지만, 아직은 모든 그래픽 표현의 최종 출력지가 2D의 화면이다. 때문에 현재의 그래픽 기술은 2D의 화면에 그래픽을 3D처럼 보이게 만드는 것이 목적이며, 향후 SF 영화처럼 3D 그래픽 자체를 평면이 아니라 공간에 표현할 수 있게 되면 또 한 번의 기술적 도약이 이뤄질 것이다.

2D 그래픽의 발전은 ‘화면’을 사용하는 모든 기기의 생태계를 바꿔놓았다. 가장 많이 사용하는 PC 운영체제인 마이크로소프트의 윈도우도 초창기에는 그림판 수준으로 단순했지만, 윈도우 95를 기점으로 본격적으로 사용자 인터페이스에 그래픽 요소를 첨가하기 시작했다. 단순한 표현으로는 인터페이스가 ‘예뻐졌’고, 좀 더 직관적인 이미지를 차용해 사용자가 이용하기가 더욱 쉬워졌다. 실제로 윈도우 3.1 시절에는 적어도 운영체제 활용 서적을 보며 사용법을 익혀야 했지만, 윈도우 10에 이른 현재는 굳이 별다른 공부를 하지 않아도 원하는 작업을 손쉽게 할 수 있게 됐다.

3D 그래픽의 구현 과제는 무엇보다 품질이다. 윈도우 95의 화면보호기를 켜 두면 구체가 화면을 떠다니며 팔방으로 변했다가 다시 구 형태로 돌아가는 모습을 볼 수 있었다. 다만 완전한 구 형태일 때도 가만히 보면 정육면체의 주사위를 원형으로 뭉쳐놓은 것 같은 각이 보였다. 현재까지도 CG로 완벽한 구를 표현하는 것이 어려운데, CG의 개념 상 곡선을 표현하는 것은 어려운 과제로 남아 있기 때문이다. 따지고 보면 곡선의 표현이 정점에 이를 때 새로운 차원의 CG로 한 걸음 나아갈 수 있지 않을까 싶다.

▲게임 분야에서는 2D 그래픽을 폭넓게 활용하며 2D를 3D로 착각하게 만드는 애니메이션 효과도 활발하게 사용됐다. 1992년 출시 당시 획기적인 아이디어와 그래픽으로 인기를 끈 FPS 게임 ‘울펜슈타인 3D’(Wolfenstein 3D) 역시 실제로는 2D 그래픽을 사용했지만, 마치 3D 그래픽을 보는 듯한 화면 구성이 참신했다. 이 시리즈는 오는 2019년 신작 ‘울펜슈타인: 영블러드’(Wolfenstein: YoungBlood)가 출시될 예정이다.

1990년대 중반부터 본격적으로 3D 그래픽을 사용한 게임들이 출시되기 시작했다. 스타크래프트와 함께 당시 출시된 거의 모든 게임을 조금씩이나마 해본 바로는, 하드웨어의 성능이나 제작 기술의 부재로 인한 CG의 표현력 한계를 게임 방식, 스토리라인, 고유한 특징 등의 인 게임 콘텐츠로 메워지는 경우가 많았다.

3D 그래픽을 구현하는 방법은 복셀(Voxel, Volume + Pixel) 그래픽과 폴리곤(Poligon) 그래픽으로 나뉜다. 복셀 방식은 2차원의 픽셀을 3차원 형태로 구현하는 방식으로, 보통 정육면체 형태를 공간에 채워나가는 방식을 사용한다. 이와 달리 폴리곤 방식은 공간에 3개의 정점 정보를 입력하고 여기서 발생한 표면에 텍스처를 입히는 방식이다. 복셀 방식은 공간 전체에 픽셀의 좌표 정보를 기록할 수 있어 입체적인 피사체의 단면도 표시하고 재구성할 수 있고, 질감의 표현에 있어 폴리곤 방식보다 결과물의 정밀도가 더 높다. 다만 해상도가 높아질수록 그에 따른 요구 연산속도가 기하급수적으로 늘어, 일정 해상도 이상에서는 개인용 컴퓨터로 감당할 수 없을 만큼의 성능이 필요하다.

3D 그래픽 초창기에는 복셀 방식이 더 많이 사용됐지만, 해상도가 높아지면서 하드웨어가 복셀 그래픽을 구현할 수 없을 정도가 되면서 폴리곤 방식이 그 자리를 이어받았다. 현재는 CPU와 GPU의 성능이 향상되면서 엔비디아를 비롯한 게임엔진, 게임 개발사들이 폴리곤 위주의 그래픽에서 일부 요소를 복셀 방식으로 만드는 기술을 시도하고 있다. 향후 복셀 방식을 감당할 수 있을 만큼 하드웨어가 향상되면, 복셀 방식으로 제작된 게임도 즐길 수 있게 될 듯하다.

 

CG의 현재, 가상과 현실의 아슬아슬한 경계
1995년에 처음 접했던 소니의 게임 콘솔 ‘플레이스테이션’의 게임은, 풀 3D 그래픽이라는 것 자체만으로도 게임을 하는 사람이나 보는 사람 모두를 흥분케 했다. 그래픽 수준도 뛰어났는데, 게임 내 곡선의 표현도 당시의 3D 그래픽에 비교했을 때 상당히 부드러운 수준이었다. 국내에 정식발매가 되지 않아 기기 가격과 게임 타이틀 가격이 현재의 최신 버전 기기와 타이틀 가격보다 비쌌다. 그럼에도 불구하고 다양한 게임 콘솔 잡지에서 매월 새로운 게임의 공략을 수록하는 등 국내 게임 시장에 큰 획을 남긴 것은 분명하다.

현재의 게임 콘솔 ‘PS4 프로’는 4K UHD 해상도를 60Hz 주사율로 지원한다. PC로도 3D 게임을 4K 해상도로 즐기기 위해선 상당한 수준의 하드웨어 성능이 필요한데, 전용기기의 특성을 제대로 보여주는 게임 콘솔의 그래픽 표현 수준은 20년 전에 비해 엄청나게 발전했다. 3840x2160 해상도를 가득 채우는 안드로이드의 모습에서 ‘불쾌한 골짜기’를 느끼기 어려울 만큼 수준이 향상됐다. 개발사에서 보급형 기기의 성능에 맞추기 위해 해상도를 개발 단계보다 낮췄다는 점을 감안하면, 차세대 기기와 8K 해상도의 디스플레이가 보급됐을 때는 얼마나 더 나아질지 즐거운 상상을 하게 된다.

▲기자가 고교 시절 스타크래프트와 함께 즐기던 FPS 게임 ‘퀘이크 III 아레나’(Quake III Arena)는 당시 멀미 유발 게임으로도 악명이 높았다. 실제 사람처럼 뛰어다니는 것이 아니라 화면 속 공간 전체를 빠르게 넘나드는 액션이 특징이었다. 1990년대 후반부터 2000년대 초반까지는 ‘레인보우 식스’, ‘카운터 스트라이크’(PC), 버추어 캅, 타임 크라이시스(AC) 등 1인칭 슈팅 게임의 전성시대로, 게임 그래픽이 비약적으로 발전한 때이기도 하다.
▲15인치의 볼록한 브라운관부터 60인치 UHD TV까지 수십 년을 봐 왔지만, 새로 출시된 게임의 첫 화면을 보는 것은 여전히 설레는 경험이다. 특히 한글을 지원하는 대작 게임의 출시가 점점 많아지는 요즘은 그 기대감이 더욱 커진다. 사용자가 임의로 접근할 수 없는 영화와 달리, 게임에서의 그래픽은 사용자로 하여금 더 나은 환경을 구축하고 싶게 만든다.

 

한 때 ‘화려함’이 게임의 전체적인 품질을 결정하는 요소 중 하나였다면, 지금의 대세는 ‘최적화’다. 그래픽을 만드는 제작사들은 수천만 원 이상의 장비를 이용해 일반적인 해상도의 2배가 넘는 원화를 만들 수 있다. 하지만 CG가 아무리 뛰어나다 해도, 제작 과정에서의 최대 해상도 그대로 제품을 출시하면 사람들이 접근할 수 없게 된다. 스마트폰을 이용하는 모바일 게임의 인기가 계속 높아지는데, PC보다 성능이 낮은 스마트폰의 게임은 무엇보다 클라이언트가 사용하는 자원이 최대한 적어야 한다. 더불어 단순히 자원의 소모만 줄이는 것이 아니라 필요한 자원을 최대한 적절히 배치하는 최적화도 요구된다.

인텔, AMD, 엔비디아 등 프로세서 제조사들이 ‘더 빠른’ 속도와 성능을 향해 달릴 때, 영화나 게임 등의 콘텐츠 제작사들은 제작 환경과 이용 환경을 결합해 ‘더 나은’ 완성품을 향해 달린다. 가상현실(VR)과 증강현실(AR)은 새로운 디스플레이 콘텐츠 영역으로 천천히 자리를 잡아가고 있고, 사람들은 많은 문화 콘텐츠에서 ‘속편’과 함께 새로운 가능성을 기다리고 있다. 현재 시점에서 필요한 것은 소위 허리띠를 졸라매는 최적화와 함께, 제작자와 사용자 모두가 만족할 수 있는 접점의 높이를 조금씩 높여가는 일이다.

이 기사를 공유합니다
저작권자 © 테크월드뉴스 무단전재 및 재배포 금지