또 하나의 현실을 만드는 기술 - 컴퓨터그래픽공학
| 글 | 고형석 서울대 전기공학부 교수ㆍko@graphics.snu.ac.kr |
정부는 3차원(3D) 애니메이션을 21세기 국가전략산업으로 정했다. 영화와 애니메이션의 멋진 장면 뒤에는 컴퓨터그래픽 기술이 있다. 미래의 핵심 콘텐츠를 이끄는 컴퓨터그래픽공학에 대해 알아본다.
|
|
|
온라인 게임은 21세기 대표 콘텐츠 중 하나다. 살아있는 듯한 게임 캐릭터의 움직임 뒤에 컴퓨터그래픽 공학이 있다. |
수억 년 전 공룡 벨로시랩터가 사냥감을 좇아 뛰어다니고 시체들이 다시 살아나 절대반지를 차지하려는 괴물을 쓸어버린다. 영화 ‘쥬라기 공원’과 ‘반지의 제왕’의 진짜처럼 생생한 광경 뒤에는 21세기의 핵심 콘텐츠, 3D 애니메이션·컴퓨터그래픽이 숨어있다.
애니메이션이라는 말을 듣고 스크린 속 장면만을 떠올리는 사람은 컴퓨터그래픽이 공학과 예술의 접목 분야임을 모르는 경우가 많다. 극장이나 텔레비전에서 보는 애니메이션과 영화를 실제로 제작하는 사람들은 감독과 예술가지만, 이보다 먼저 컴퓨터그래픽을 위한 소프트웨어가 갖춰져야 한다. 애니메이션·특수효과를 위한 기술을 연구하고 그 결과를 소프트웨어로 개발하는 이들이 컴퓨터 공학자다. 프로그램으로 가상의 현실을 묘사하는 컴퓨터그래픽의 역사는 언제부터 시작됐을까?
1961년 ‘우주전쟁’이라는 최초의 비디오게임이 미국에서 개발됐다. 평면적이긴 하지만 최초의 컴퓨터그래픽이었다. 본격적인 3차원 그래픽은 1974년 ‘제트 버퍼 알고리즘’이라는 하드웨어로 제작되면서 비로소 시작됐다. 컴퓨터그래픽 기술은 영화와 애니메이션 제작에 꾸준히 사용됐고 1995년 극장용 애니메이션 영화로는 처음으로 작품 전체를 3D 그래픽으로 제작한 ‘토이 스토리’가 나왔다.
2000년대에 들어서 컴퓨터그래픽 없이는 영화제작을 생각할 수도 없게 됐다. 영화 ‘월드 오브 투모로우’에서는 애초의 내용 구상 자체가 컴퓨터그래픽 기술을 전제로 했다. 1990년대까지는 컴퓨터그래픽을 위한 하드웨어의 개발이 중요한 문제였지만 이 부분은 이미 충분히 해결됐다. 2000년대에는 애니메이션을 표현하는 기술개발이 관건이 됐다.
표현의 한계를 넘어서는 컴퓨터그래픽공학
|
|
우리나라에서 1998년 개봉한 영화 ‘타이타닉’의 한 장면. 침몰하고 있는 거대한 배는 컴퓨터그래픽 작업으로 탄생했다. |
배가 서서히 가라앉고 사람들이 물 속에서 허우적거리는 영화 ‘타이타닉’의 한 장면을 떠올려 보자. 이 장면에서 물의 움직임에 사실감이 없었다면 스토리에 몰입했던 관객들은 거부감을 느끼게 되고 영화도 흥행하지 못했을 것이다.
복잡하게 보이는 바닷물의 움직임은 분명 물리법칙을 따른다. 애니메이터가 상상력과 수작업에만 의존해 시시각각 변하는 물의 표면을 그려낸다면 그 결과가 자연스럽게 보일 리 없다. 영화에서 가장 중요한 것은 물론 내용이지만 관객을 영화에 몰입시키는 것은 스크린의 사실성이다. 컴퓨터그래픽을 공학에서 다뤄야 하는 이유가 여기에 있다.
현재 컴퓨터그래픽 애니메이션 기술은 미국이 주도하고 있다. ‘필요는 발명의 어머니’라는 말처럼 세계 영화시장의 대부분을 장악하고 있는 헐리우드에서 먼저 컴퓨터그래픽 기술을 필요로 했기 때문이다. 놀랍게도 한국의 3D 컴퓨터그래픽 기술은 그 짧은 역사에도 불구하고 괄목할 만한 수준에 와있다. 미국 다음이라고 하는 주장도 있다. 실제로 한국의 애니메이션 제작 회사가 외부에 기술을 의뢰할 때 미국과 한국 이외의 다른 나라를 찾는 일은 거의 없다.
디지털 영화 제작에도 기술이 관건이 됐다. 언젠가 ‘파이널판타지’‘니모를 찾아서’ 등 화제가 된 영화의 제작팀을 초대해서 제작과정을 상세히 들을 기회가 있었다. 그들은 한결같이 기술의 한계 때문에 내용이 많이 변경됐다고 털어놨다. 영화 ‘타이타닉’에서도 대부분의 장면에서 컴퓨터그래픽 배를 사용했지만 몇 장면을 위해 1/4 크기의 실제 배를 건조했다고 한다. 배가 갈라질 때 물이 튀는 효과를 현재의 그래픽 기술로는 만들 수 없었던 것이 가장 결정적인 이유였다고 한다. 컴퓨터 애니메이션의 기술적·과학적 측면에 대해 좀 더 자세히 알아보자.
컴퓨터그래픽 속 물리공간
|
|
컴퓨터그래픽공학은 예측 가능한 물리 상황을 조합해 실재 같은 움직임을 표현하는 작업이다. |
여러 블록이 지지대 널빤지의 왼쪽에 놓인 채 균형을 유지하고 있다고 가정하자. 이때 다른 블록 하나가 널빤지 오른쪽 가장자리로 떨어진다면 어떻게 될지 상상해보자. 물체가 자유낙하할 것이라는 간단한 물리지식을 컴퓨터프로그램으로 직접 시연할 수 있다면 어떨까. 컴퓨터그래픽을 연구하는 사람들이 누리는 하나의 즐거움이 여기에 있다. 교과서에서 배운 물리 지식을 직접 그림으로 만들어 확인해볼 수 있기 때문이다.
보는 즐거움 뒤에는 각 물체의 움직임 하나하나를 모두 계산해 주는 프로그램이 숨어있다. 컴퓨터에 그래픽보드만 장착하면 물체를 영상으로 보여주는 것 자체는 어렵지 않다. 그러나 물체의 움직임을 계산하는 것은 앞으로도 많은 연구가 필요하다.
물체의 거시적인 움직임을 계산하는 간단한 문제에 많은 연구가 필요하다는 사실에 의아해 하는 사람이 있을 수 있다. 뉴턴의 고전 역학만 적용해도 쉽게 해결될 문제 아닌가 생각할 사람도 있을 것이다.
그러나 컴퓨터그래픽으로 세상을 재현하려면 해결해야 할 몇 가지 문제가 있다. 결론부터 얘기하면 우리가 살고 있는 물리공간은 무한요소로 이루어진 연속적 공간인 반면 컴퓨터그래픽 속 세상은 유한요소로 이루어진 불연속 공간으로 모델링한 것이기 때문이다.
앞의 문제는 각 블록 형태가 변하지 않기 때문에 비교적 간단하다. 그런데 만약 블록이 다른 물체와 충돌하면 어떻게 될까? 뉴턴은 충돌현상에 대한 법칙을 발견하지 않았다. 충돌현상을 그래픽으로 재현하려면 우선 운동량보존법칙과 법선방향의 반발력계산공식이 사용된다. 여기에 충돌 마찰력을 고려하면 쿨롱 법칙이 추가된다. 이미 물리교과서의 상황보다 훨씬 복잡해졌다.
더 어려운 문제는 지금부터다. 뉴턴의 운동법칙을 따른 계산 결과는 1/24초 동안 충돌이 없다는 가정에서 얻었다. 만일 중간에 다른 블록과 겹친 시점이 있었다면 충돌이 일어난 (1/24초보다 시간이 적게 흐른) 시점으로 다시 돌아가 운동량보존, 반발력, 쿨롱 법칙을 적용해야 한다. 한 충돌에 대해 시점을 되돌린다는 것은 다른 물체와의 관계도 달라질 수 있다는 뜻이므로 1/24초의 시뮬레이션을 계산해야 한다.
충돌 문제 그 자체가 어려운 것은 아니다. 그런데 모든 경우를 프로그램화하기란 불가능하다. 1/24초 후 충돌이 일어났는지 확인하는 것만 해도 대단히 많은 계산이 필요하다. 충돌현상은 컴퓨터그래픽 물리공간에서 대단히 중요한 문제다.
물을 애니메이션으로
|
|
움직임을 예측해야 하는 컴퓨터그래픽에서 물과 같은 유체는 표현하기 어려운 대상이다. |
영화제작 과정에서 물체의 움직임은 애니메이터가 수작업으로 표현할 수 있다. 그러나 물, 폭발, 불과 같은 유체현상은 애니메이터의 수작업으로는 감당하기 어렵다. 물과 같은 유체에서는 모든 점들이 자유롭게 움직일 수 있기 때문이다. 그러므로 블록과 달리 물의 자유도는 원칙적으로 무한대다. 당연히 그 움직임을 재현하기가 단단한 물체보다 어렵다.
1840년경 과학자 나비어(Navier)와 스토크스(Stokes)는 유체의 움직임을 기술하는 방정식을 발견했다. 그 방정식을 ‘나비어-스토크스 방정식’이라 한다. 이것은 공간 위 각 점에서 속도와 외력, 밀도와 압력, 유체의 점성계수에 관한 방정식이다. 일반적인 유체의 움직임을 기술하는 방정식이 알려졌으니 이제 유체 현상은 연구가 끝났다고 생각할 수 있다.
그러나 이 방정식의 해는 수식으로는 구할 수 없다. 모든 위치의 점마다 따로 계산을 하는 방법으로 유체 움직임을 파악하거나 애니메이션으로 표현할 수 있을 뿐이다. ‘니모를 찾아서’의 고래 뱃속 장면이나 ‘투모로우’의 대규모 홍수 장면은 실사나 미니어처를 전혀 사용하지 않고 컴퓨터그래픽으로만 제작한 것이다. 이 장면에서 나비어-스토크스 방정식을 이용해 사실과 매우 유사한 물의 움직임을 만들 수 있었다.
나비어-스토크스 방정식은 전산유체학에서 배운다. 세계적으로 기계공학과, 물리학과, 수학과 등에서도 방정식과 관련된 연구를 진행하고 있다.
이미 주어진 방정식을 수치적으로 푸는 것이 또 뭐가 어렵다는 건지 의아해할 사람도 있을 것이다. 그러나 연속적인 시간·공간을 무수한 조각으로 나눠 각각의 움직임을 표현하면 오차와 불안정성이 생긴다. 컴퓨터그래픽에서 쓰이는 전산유체학의 핵심은 계산량을 크게 늘리지 않으면서 안정적으로 방정식을 해결할 방법을 찾는 것이다.
최근의 블록버스터 영화에서 특수효과로 제작한 물을 봤다면 대단히 만족했을 것이다. 그러나 앞에 소개한 기술적 한계로 아직 실현할 수 없는 요소들이 제법 많다. 대표적인 것이 바다와 같이 넓은 영역에 걸친 물의 움직임을 사실적으로 만드는 일이다. 그 동안 제작됐던 영화에서는 카메라를 멀리 배치하는 방식으로 물의 세밀한 움직임에서 나타날 문제를 피했다. 물보라 현상은 애니메이터들의 수작업을 동원했다.
물의 움직임을 제어하는 기술도 부족하다. ‘투모로우’의 홍수 장면에서 거리에 물이 쏟아질 때 배우들이 휩쓸리지 않고 달아날 수 있을 정도로만 흐르도록 물의 움직임을 제어할 방법이 없다. 여러 번 시뮬레이션한 결과 중 적당한 것을 골라 사용하는 방법으로 해결하고 있다. 그리고 물에 어떤 물체를 던지면 생기는 왕관 현상이나 물보라 같은 기체, 액체, 고체의 상호 작용은 아직까지 해결하지 못했다. 그래서 라면이나 찌개는 아직 애니메이션에 등장하지 못하고 있다.
감동을 주는 공학
|
|
실사를 뛰어넘는 컴퓨터그래픽 영화를 표방한 영화 ‘파이널 판타지’의 포스터 이미지. 머리카락이나 옷의 움직임을 사실적으로 표현하려는 연구가 한창이다. |
최근 컴퓨터그래픽 공학은 복잡한 현상, 변형 현상의 연구에 집중하고 있다. 예를 들어 머리카락처럼 무수히 많은 객체의 움직임을 그래픽으로 표현하는 것이다. 변형현상은 앞에서 언급한 유체현상을 포함해 옷의 움직임, 젤리와 같은 변형체의 움직임을 말한다. 예를 들어 최근 애니메이션 기술은 옷을 매우 사실감 있게 표현하는 수준에 이르고 있다. 현재 더 많은 움직임과 재료 특성을 애니메이션 기술로 재현하려는 연구와 그것을 표현하기 위해 계산량을 줄이는 방법을 연구하고 있다.
대학에서 컴퓨터그래픽공학을 전공한 사람들은 현재 어디서 무슨 일을 하고 있을까? 최고의 실력자들이 선호하는 곳은 역시 영화제작사다. ILM, Sony 등 최고의 특수효과 제작사에서 활약하고 있는 애니메이터와 기술 개발 전문가 중에 한국인이 제법 많다.
수적으로 컴퓨터그래픽 전공자가 가장 많이 진출한 곳은 게임 개발회사다. 이공계 출신은 게임의 비주얼 프로그래머로, 미대 출신은 비주얼 디자이너로 활약하고 있다. 이밖에도 컴퓨터그래픽 전공자들은 대기업, 국책연구소, 교수 등 넓은 영역에 진출해 있다.
어떤 분야든 컴퓨터그래픽 전공자라면 일단 컴퓨터에 관한 전문가여야 한다. 여기에 수학과 물리에 대한 지식이 추가로 필요하다. 이것은 컴퓨터그래픽 전공자들이 택할 수 있는 진로가 그만큼 넓다는 것을 의미한다.
1928년에 만들어진 애니메이션 ‘미키마우스’는 현재까지 세계 각국으로부터 캐릭터 사용에 대한 로열티를 받는다. ‘쥬라기공원’ 한 편의 영화가 벌어들인 수입은 현대자동차 1년 매출액을 넘었다고 한다. 컴퓨터그래픽은 막대한 부가가치를 창출하고 있으며 21세기의 치열한 국제 경쟁에서 우리나라도 결코 양보할 수 없는 분야다.
컴퓨터그래픽이 활약하는 분야는 영화에 국한되지 않는다. 요즘 자동차 생산은 전적으로 컴퓨터지원설계 및 제작(CAD/CAM)에 의존하는데 그 핵심이 바로 컴퓨터그래픽 기술이다. 건축, 조선, 교육 등에서도 컴퓨터그래픽은 대단히 중요하게 사용되고 있다.
미래 영화와 애니메이션에서 더 큰 감동을 줄 애니메이션 배우를 만드는 것, 젊은이들의 창의력과 도전정신으로 이룰 수 있는 꿈이다.
|
|