d라이브러리









‘신과 함께’ 1편은 남을 구하다가 죽은 소방관 ‘김자홍’이, ‘신과 함께’ 2편은 억울하게 죽은 군인 ‘김수홍’이 각각 저승에서 49일 동안 재판받는 이야기를 담은 영화 시리즈다. 1편에서는 어머니와 가족 사이의 사랑을 다루고, 2편에서는 용서를 주제로 삼아 관객의 눈시울을 붉혔다. 이렇게 주제도 다르고 줄거리도 다른 두 영화에 빠질 수 없는 공통점이 있다. 바로 남은 평생 착하게 살아야겠다고 다짐하게 만드는 무시무시한 지옥 세계다.

 

원작인 웹툰이 큰 성공을 거뒀는데도 실사 영화화 소식에 영화팬, 웹툰팬 모두 걱정이 앞섰다. ‘정말 만화 속 지옥을 만들어내는 게 가능할까?’라는 생각이 들었기 때문이다. 컴퓨터그래픽(CG)을 사용하는 영화는 많지만, 처음부터 끝까지 거의 다 CG로 만들어야 하는 초대형 한국 판타지 영화는 이전까지 본 적 없었기 때문이다. 

 

그런데 베일을 벗은 ‘신과 함께’는 여봐란듯이 원작 속 지옥을 그대로 스크린으로 끌어냈다. ‘이건 생략하겠지?’ 혹은 ‘이게 될까?’ 싶었던 것들도 모조리 등장했다. 그림보다 훨씬 더 생생하고 진짜 지옥 같은 모습이었다. 

 

불가능을 가능으로 만든 일등공신은 CG 기술이다. ‘신과 함께’는 대략 1900숏 중 1700숏을 CG로 만들었다. 약 90%를 CG로 만든 셈이다. 배경뿐만 아니라 배우도 ‘*휴먼 스캔’ 기술을 이용해 완전히 디지털로 만들어 촬영했다. ‘신화 함께’ 1편에서 배우 차태현이 아이를 안고 빌딩에서 떨어지는 장면은 디지털 배우인 CG가 연기한 부분이었다. 

 

‘신과 함께’의 CG는 이 영화를 만든 김용화 감독이 2011년 설립한 VFX(시각효과) 기업 덱스터 스튜디오가 담당했다. 김 감독은 2011년 영화 ‘미스터 고’의 주인공 고릴라를 제대로 구현하기 위해 덱스터 스튜디오를 만들었다.

 

덱스터 스튜디오는 환경을 표현하는 프로그램 ‘ZENV’와 털을 표현하는 프로그램 ‘ZENN’을 개발해 더욱 생생한 지옥을 만드는 데 성공했다. 그 덕분인지 ‘신과 함께’ 1편은 1,400만, 2편은 1,200만 관객을 돌파하며, 역대 최초로 ‘쌍 천만 관객 영화’가 됐다. 하지만 처음부터 이런 기술을 뚝딱 개발한 건 아니다. 덱스터 스튜디오가 ZENN을 만들 땐 2년이 넘도록 털 만드는 프로그램에만 몰두했다.  

 

 

어떤 복잡한 그래픽도 출발은 점, 선, 면!

 

CG에서 가장 기본이 되는 것은 ‘폴리곤 모형’이다. 폴리곤은 점, 선, 면으로 이뤄진 다면체인데, 만들고 싶은 대상을 다면체 모양으로 만든 걸 폴리곤 모형이라고 한다. 폴리곤 모형으로 틀을 잡았다면 다음은 이 물체를 어떻게 움직일 건지 계산해야 한다. 

 

수많은 폴리곤 모형이 모여 캐릭터 하나가 되거나 나무 한 그루가 되는데, 모든 폴리곤 모형을 장면마다 일일이 제어하는 것은 매우 힘들다. 그래서 무엇을 표현한 폴리곤 모형이냐에 따라 적절한 공식을 적용해 컴퓨터가 알아서 움직임을 계산하게끔 만들어야 한다. 이때 각 점을 좌표로 두고 방정식을 이용하면 조건이 변할 때마다 폴리곤 모형으로 만든 물체가 스스로 움직이게 된다. 

 

예를 들어 물을 표현한 폴리곤 모형이라면 점성을 가진 유체의 운동을 설명하는 나비에-스토크스 방정식을 적용해 물의 움직임을 나타낸다. 비행기를 폴리곤 모형으로 만들었다면 흐르는 유체의 속도와 압력, 위치에너지의 관계를 서술한 ‘베르누이 방정식’을 적용해 하늘을 날게 할 수 있다. 

 

CG 기술은 단순히 멈춰 있는 그림을 모은 것이 아니라 컴퓨터가 물체를 움직이게 만드는 작업이기 때문에 수학, 물리학, 프로그래밍이 중요하다. 살아 있는 생물을 표현할 때는 심지어 해부학까지 공부하기도 한다. 

 

 

털 한 올이 고릴라가 되기까지

 

그렇다면 CG로 생물은 어떻게 구현할까? 김용화 감독이 ‘미스터 고’의 주인공 고릴라 링링을 구현하기 위해 덱스터 스튜디오를 차리고 털을 표현하는 프로그램 ‘ZENN’을 만들었다. 지금부터 고릴라를 만드는 방법을 알아보자. 

 

 

이제 이런 털을 수백만 개 만들고 움직임을 제어해야 한다. 게다가 털이 어떤 방향으로 표면에 붙어 있게 할 건지, 어떻게 움직이게 할 건지 결정할 또 다른 공식이 필요하다. 

 

털 한 올을 만드는 게 적분에 가까운 과정이라면, 털의 움직임을 설정하는 것은 미분에 가깝다. CG 작업 시 표면에서 접선을 구해 그 방향으로 털을 붙이고, 살가죽이 움직일 때 그 위치에 맞춰서 털 또한 자연스러운 기울기로 움직이게 해야 한다. 만약 만든 털을 표면에 아무렇게나 붙이면 팔이 움직일 때 정작 털은 반대 방향으로 휘거나 엉뚱한 모양이 될 수 있다.

 

움직임에 쓸 알맞은 공식을 생각해냈다 해도 문제는 남아 있다. 수백만 개의 털을 하나하나 계산하고 있다간 한 컷에만 어마어마한 데이터를 쓰게 될 수도 있기 때문이다. 이러다 ‘CG 지옥’에 갇히면 영원히 렌더링(CG에서 가상으로 완성된 결과를 만들어내는 과정)만 반복해야 한다. 데이터가 지나치게 크면 렌더링 자체도 어렵고, 렌더링이 가능하다 해도 너무 시간이 오래 걸리므로 제작비가 어마어마하게 불어난다. 그래서 CG에서는 물체를 만드는 것 이상으로 물체를 다루는 기술이 중요하다. 

 

 

다면체의 그림자 분신술! 인스턴스 스캐터링 

 

그래도 다행인 것은 CG에서도 복사 붙여넣기 기술이 있다는 점이다. 염라가 걷는 숲은 수백 그루의 나무로 이뤄져 있는데, 이 나무 한 그루에 들어가는 데이터는 몇십 MB(메가바이트)에서 몇백 MB에 달한다. 잠깐 스쳐 지나가는 배경으로 수백 MB짜리 나무가 수백 그루나 있다면 렌더링하는 데에만 제작 기간을 다 써야 할지도 모른다. 이럴 땐 CG계의 그림자 분신술인 ‘인스턴스 스캐터링’ 기술을 쓰면 된다.

 

인스턴스 스캐터링은 데이터를 모두 지닌 원본 나무는 하나만 두고 그 주변에 CG의 뼈대가 되는 폴리곤 모형의 수치 정보만 여기저기 뿌려두는 기술이다. 질감까지 완전히 입힌 진짜 나무는 몇 개만 있고 나머지는 속에 다면체밖에 없는 분신 나무들인 셈이다. 

 

이 방법을 쓰면 데이터 크기를 크게 줄일 수 있다. 게다가 수치 정보만 있어도 각도나 방향을 다르게 움직일 수 있다. 제각각 다르게 움직이는 그림자 분신술과 같은 기술이다. 

 

 

용어 설명

*휴먼 스캔 : 수많은 각도에서 많은 양의 사진을 찍어 사람을 폴리곤(다면체)으로 만드는 기술. 이렇게 만든 폴리곤 모형은 프로그램 도구를 써서 자유자재로 움직일 수 있다.

이 기사의 내용이 궁금하신가요?

기사 전문을 보시려면500(500원)이 필요합니다.

이 기사를 읽은 분이 본
다른 인기기사는?