지은이 / 민수홍 | 지도교수 / 정형민
3-D 컴퓨터 그래픽 렌더링 색채재현 인터페이스의 이중성에 관한 고찰
지도교수 정 형 민
이 논물을 미술학 석사 학위논문으로 제출함
2009년 2월
서울대학교 대학원
서양화과 미술이론전공
민 수 홍
- 오늘날 3-D CG 렌더링에서 빛과 색채를 재현하는 기술은 실제의 것과 전혀 같지 않다. 그것은 임의적 “절충”을 통해서 만들어낸 허상이자 연출이다. [i]
1. 서론
- 이러한 색채재현기술들은 자연과학분야에서의 연구를 통해 오늘날까지 파악되고 있는 빛의 원리와 그것의 작용으로서의 색채 현상을, 각각의 컴퓨터 프로그램을 구성하는 다양한 알고리즘(algorithm)을 통해 재현(再現)하도록 고안된 것들이다. [1p]
- 그러나 자연 상태의 빛의 작용 원리를 따르는 디지털 색채재현기술들이 컴퓨터 하드웨어가 지니는 처리용량의 한계를 근본적을 극복한 것은 아니었다. 그렇기 때문에 결국, 3-D CG 작업을 통해 얻을 수 있는 시각 효과(visual effect)를 세련화하는 과정에서 실제 빛의 작용원리와 전혀 별도의 방식으로 발전하고 복잡화된다. 3-D CG 렌더링에서 사용되는 디지털색채재현기술들과 실제 빛이 작용하는 원리가 일치하지 않는 양상이 더욱 심화되며 고착화된 것이다. 이에 따라 빛의 원리와 일치하는 기술이 개발됨으로써 사라질 것으로 기대되었던, 3-D CG 개발 초기에 언어적 조작에 기반을 두고 임의적으로 고안된 이중의 인터페이스 체계 또한 오늘날까지 이어지고 있다. [4~5p]
- 하지만 이러한 경험들을 통해서 얻어지는 개인적인 이해와 지식들은 암묵지(tacit knowledge)와 같은 특성을 지니게 되기 떄문에 표준화된 전문적이고 정량적인(quantitative) 지식이나 정보로서 가공되지 못한 채로 사라지는 경우가 많다. [6p]
2. 3-D CG 렌더링 1세대(1968 - 1983)의 색채재현 기술들과 이들을 채택한 프로그램들의 인터페이스
- 이 장에서는 3차우너 형상(shape)의 형성을 화면상에서 구현하는 최초의 기술인<Ray Casting; '광선 투사법‘>이 1968년에 발표되면서 가능해진 3-D CG 렌더링 1세대의 색채재현 기술과 그것을 채택한 프로그램들의 인터페이스가 지닌 이중적 특성의 초기 모습을 살펴본다.
<Ray Casting>기술은, 가상 공간 내에서 설정된 보는 이의 시점(실제로는 카메라의 시점)에서부터 특정 픽셀(pixel)을 통해 빛을 투사(cast)해서 이 빛이 물체에 닿거나 보이는 영역에서 벗어날 때까지 따라감으로써 그 해당 픽셀의 색을 결정해 렌더링 이미지를 생성하는 방식이다. 그 빛이 어떤 물체에도 닿지 않는다면 해당 픽셀은 검은색이 되고, 빛이 어떤 물체의 표면에 도달하게 되면 프로그램은 그 빛이 닿은 지점에서의 대상의 색상을 계산해서 그 값을 해당 픽셀의 색으로 결정한다. 화면에 보이는 대상을 구성하는 모든 픽셀들은 위의 같은 과정을 순차적으로 반복하여 얻어진 색채의 값을 부여받게 되는 것이다. [11p]
1. 가상공간에서의 빛과 매질의 관계 재현 시도
- 주지하다시피, 실재 물리계에서의 빛은, 입자와 파장의 성질을 동시에 띤 것으로 존재하며 색채현상은 이를 통해서 생겨난다. 이에 따라, 빛이 지니는 입자와 파장의 성질은 인간이 정의하는 바의 모든 색채 현상을 유발시키는 요인이 되는 것이다. 하지만 3-D CG 렌더링에서의 빛은, 인간이 고안한 프로그램 언어가 지정하는 좌표의 형태로 존재하게 된다. 잘게 쪼개진 물체의 면들은 이 좌표와 90˚를 이룰 때 가장 밝고 0˚를 이룰 때 가장 어둡도록 지정되었고 이 ‘빛’이라 일컫는 좌표와의 각도가 90˚보다 커지면 ambient 영역으로 처리되어, 빛과는 상관없는 부분으로 처리되었다. [14p]
2. 3-D CG 렌더링 1세대 색채재현 기술들의 특징
-<Bump Mapping>기술(1978)의 도움으로 표면의 요철 현상을 표현할 수 있게 되었고,<Ray Tracing>기술(1980)과 그것을 응용한 기술들이 등장함으로써 반사와 굴절 현상의 표현 또한 가능해지며 육안으로 관찰 가능한 상당수의 빛의 현상과 색채현상이 컴퓨터 프로그램의 조작을 통해 화면에 등장하게 되었다. 하지만 이 기술들은 여전히 실제 물리법칙의 작용원리와는 아무런 상관이 없는, 그저 ‘화면상의 기법들’에 불과했다. [15~16p]
3. 초기 3-D CG 렌더링 기술들이 적용된 프로그램들의 인터페이스
4. 소결
3. 3-D CG 렌더링 2세대(1984 - 1998)의 색채재현 기술들과 이들을 채택한 프로그램들의 인터페이스
- 이 장에서는 빛의 작용과 그 효과를 실재(實在)와 동일한 원리로 재현하도록 하는 프로그램 인터페이스를 최초로 갖춘 3-D CG 기술인<Radiosity; '방사법‘)>가 발표된 해인 1984년을 기점으로 삼은 3-D CG 렌더링 2세대(1984-1998)의 색채재현 기술 및 그 인터페이스의 특징을 살펴보겠다. 이것을 통해 3-D CG렌더링에서의 색채재현 기술과 그 인터페이스의 구성이, 1세대의 그것과 달리, 프로그램 사용자의 직관과 일치하는 방식으로 ㅂ라전하는 과정과 양상을 드러내보이고자 한다.
<Radiosity>기술의 렌더링 알고리즘은, 광원으로부터의 빛뿐만 아니라 물체 간에 주고받는 빛의 영향, 확산광 등을 화면에 등장하는 대상의 모든 표면(surface)들에 비춰지는 광량(光量)의 분포에 따라 계산하여 그 각각의 색채가 지니는 값을 구하는 것이었다. (그림 7, 8) 이러한 계산법은 실제의 광학 법칙(optics)에 근거한 수식 계산을 통해 가상 물체(virtual objects)의 이미지를 얻는 방법이다. 광학 법칙은 매우 복잡하여 실제로 모두 규명되지 못했기 때문에 3-D CG에서는 계산학적, 시각적 측면에서 이를 단순화하여 적용한다. 이러한 방법을 통해 재현되는 이미지들은 그림자 현상이나 거울 효과(mirror effect) 등 일반적인 실제의 광학 현상의 결과물들을 재현할 수 있는 장점이 있었다. 1세대의 3-D CG 렌더링 기술들과 그 인터페이스가 실제의 광학 현상을 모방 후 수정(mimicry&retouch)하는 것이었다면<Radiosity>기술의 등장 이후 본격화된 2세대의 3-D CG 렌더링 기술들과 그 인터페이스는 실제 광학 현상의 작용원리를 차용하여 구현했던 것이다. [26~27p]
1. 3-D CG 렌더링 2세대 색채재현 기술들의 특징
- 물체가 표면의 고유한 색에 의해 빛을 다시 발하는 난반사(Diffuse Reflection)현상은 당시의 기술로서는 구현하기가 특히 까다로웠다. 광원과 물체, 물체와 물체의 관계, 물체와 시점의 관계를 모두 고려하기 때문에 계산의 복잡도가 데이터 수에 대비하여 기하급수적으로 증가하기 때문이었다. [27~28p]
2.<Radiosity>와<Photon Mapping>의 사례
-<Radiosity>기술과<Photon Mapping>기술의 작동 원리는 현대물리학에서의 에너지 보존 법칙(law of conservation of energy)의 개념에 근거한 렌더링 방정식(Rendering Equation)을 기반으로 한다. 렌더링 방정식은 폐쇄된 공간 안에서 존재하는 빛의 입자가 지닌 에너지가 보존되는 원리를 수식으로 정리한 기술이다. (그림 9)
하지만 실제 자연현상의 물리적 법칙을 근간으로 하는 이 기술을 그 결과물을 만들어내기까지 ‘끔찍하게’ 긴 계산시간을 소요해야 했다. 또한 좌표 의존적(position-dependent)인 특징 덕분에, 빛의 반사나 굴절에 의한 물체표면에서의 색채현상을 재현할 수 있었던 기존의<Ray Tracing>기술을 채택한 3-D CG 프로그램들과 호환이 어려웠기 때문이다.[29~30p]
-<Photon Mapping>은<Radiance>프로그램을 기반으로 실제 세계의 빛이 지닌 입자(photon)의 성질을 적용, 임의의 광원으로부터 나온 일정수의 빛의 입자(photon)가 물체에 부딪히며 물체 표면의 색이 갖는 특성에 따라 그 중 일부는 소멸, 다시 일부는 반사되어 다른 포면에 부딪히는 과정을 반복해서 만들어지는 각 물체의 색채 현상을 이미지로 재구성, 가상 공간에서 입체물을 재현하는 기술이다. (그림 10)이 기술 역시 완성도 높은 결과물을 얻어내기 위해서는 엄청난 수의 빛의 입자를 만들어야 했으며 결과물을 만들어내는데 엄청난 시간을 소요해야 했기 때문에 종국에는 일반화되지 못했다. 그럼에도<Photon Mapping>은, 금속제의 반사나 투명체의 굴절 현상으로 빛이 모여드는 화선(火線)현상(caustics)을 특정의 물체에만 한정적으로 적용해서 구현하는데 있어 탁월한 효과를 보여주었기에<Radiosity>에 비해서 더 많은 호응을 얻을 수 있었다. [30~31p]
3. 3-D CG 렌더링 2세대 기술들이 적용된 프로그램들의 인터페이스
- 또한 이후에 개발되는 프로그램들에서는 초기의 3-D CG에서 임의적으로 설정해놓았던 가상공간에서의 빛의 요소들 - Specular, Diffuse, Ambient, Shadow -<Radiosity>나<Photon Mapping>을 통해 재현될 때<Ray Tracing>과 같은 초기의 기술들을 적용시킨 기능이 작동하지 않도록 하는 기능이 추가된다. 3-D CG의 작업환경이 보다 사용자의 직관을 따를 수 있도록 단순화·합리화되었던 것이다. 이렇게 실제 빛의 물리적인 현상을 그대로 적용한 기능과 기술을 사용할 경우, 사용자들은 기존 프로그램들의 복잡한 이중 인터페이스 체계로부터 한결 자유로울 수 있었다. [35~36p]
4. 소결
4. 3-D CG 렌더링 3세대(1999 - 2008)의 색채재현 기술들과 이들을 채택한 프로그램들의 인터페이스
1. 3-D CG 렌더링 3세대 색채재현 기술들의 특징
2.1.<Progressive Radiosity>의 사례
-<Radiosity>가 많은 계산 시간을 소요하기는 했지만 에너지 보존이라는 실제 물리 법칙의 개념을 적용시켜 제작된 결과물은 그 이전의 절충적 색채재현 기술들을 통해 만들어진 이미지들과 비교해서 매우 신뢰할만한 것이었다. 따라서 이러한<Radiosity>자체의 계산 속도를 증가시키는 방법이 연구되어왔는데 이에 따라 개발된 것이<Progressive Radiosity>다.<Progressive Radiosity>는 이전의<Radiosity>를 작동시키던 기본 원리인 렌더링 방정식(Rendering Equation)을 포기하면서도 최대한 이전 방식의 결과물에 가까운 결과물을 만들어낼 수 있었다.<Radiosity>기술에서 쓰인 렌더링 알고리즘이 광원으로부터의 빛, 화면에 등장하는 물체들끼리 서로 주고받는 빛의 영향, 확산광 등을 화면에 등장하는 대상의 모든 표면들에 비추는 광량의 분포에 따라 데이터를 일일이 계산, 그 각각의 색채가 지니는 값을 구하는 것이었다면<Progressive Radiosity>는 그렇게 얻어진 전체의 큰 값을 다시 작은 조각들로 임의적으로 쪼개어 계산하는 방식이었다. (그림 19)
<Progressive Radiosity>는 화면에 연출하는 상황에 따라 매번 실시간 계산을 필요로 했던 이전의<Radiosity>에서와 달리, 대상의 면을 임의적으로 쪼개어 사전에 처리, 그 데이터를 간결한 형태로 저장해두고 이를 실제 렌더링 작업 시에 다시 불러내어 적절히 사실적으로 재구성했던 것이다. 그 원리는, 광원으로부터 나온 임의의 빛에너지 값을 비(非)광원 물체들이 받고 이들 각각의 비광원의 표면들은 다시 그 재질의 색과 밝기에 해당하는 정도의 2차적 광원이 되어 물체들 서로에게 빛에너지 값을 발산, 받은 빛에너지 값을 각각의 재질만큼 감소된 값으로 환산하여 다시 발산하는 과정을 무한 반복하는 것이었다. (그림 20)[42~43p]
2.2.<Ambient Occlusion>과<Subsurface Scattering>의 사례
- 하지만<Progressive Radiosity>가 취하고 있는 논리의 기본적인 전제는 “폐쇄 공간에서의 빛 에너지 보존”이었다. 그렇기 떄문에 실외광과 그에 따른 색채 현상을 구현하는 데에는 한계가 있었다.<Ambient Occlusion>은 실외광의 재현을 위해 기존의 기술들이 취하고 있는 논리를 전혀 다른 방식으로 적용시킨 기술이다.
<Ambient Occlusion>은 2세대 3-D CG 기술에 부여된 에너지 보존의 법칙의 개념을 유지하면서도 임의의 폐쇄된 공간을 기준으로 삼지 않고 빛의 현상을 물체 표면의 각도와 거리로써 계산하는 방식을 취했다. 그 개념은 다음의 세 가지 전제를 통해 이뤄진다. 1. 우선 무작위로 물체 표면의 여러 지점을 정한다. 2. 그 지점으로부터 불특정의 방향으로 방사되는 다수의 선(Ray)들이 있다. 3. 이 선들이 어떤 표면에 많이 차단(Occlude)될수록 해당 표면의 밝기는 어둡고, 차단되는 경우가 적을수록 해당 표면의 밝기는 밝아진다. (그림 23) 이 방식은 화면에 등장하는 물체들의 표면 각도와 각각의 거리를 기준으로 상호간의 데이터 값을 계산함으로써 렌더링 방정식이나<Progressive Radiosity>의 경우처럼 표현의 범위를 실내공간에만 국한시키지 않고 실내/외에 상관없이 난반사 현상을 표현해낼 수 있었다.
더구나 이 기술은 시간을 많이 소요시키는 가장 큰 요인 중 하나인 유한 요소법 대신, 불특정한 요소를 통해 결과를 검출하는 “몬테카를로 시뮬레이션(Monte Carlo Simulation)"을 사용하여 처리 속도를 한층 더 높일 수 있었다. [48~50p]
-<Subsurface Scattering>은 색유리와 셀로판 등의 투명한 물체를 투과했던 빛에 의해서 보이는 색인 투과색(Transmitted Color)현상 중에 반투명색채 현상을 재현하는 기술이다. 세라믹, 대리석, 왁스, 우유, 피부 등의 매질들은 빛이 투과해 들어가면 불규칙한 각도로 굴절하고 흩어져 그중 일부의 빛이 다른 위치로 나오는 성질을 갖는다. (그림 24)
반투명색채 현상은 애초에<Photon Mapping>기술을 이용하여 재현했었다. 하지만 결과물을 완성하기까지 시간이 많이 걸린다는 단점이 있었다. 이 기술 또한<Photon Mapping>기술의 원리를 응용한 것이었기 떄문에 역시 시간을 많이 소요할 수밖에 없었던 것이다. 이에 3-D CG 렌더링을 통해 재현하는 반투명 현상의 작업 시간을 단축할 수 있는 절충적 기술이 등장한다. 그것은 카메라 렌즈로부터의 면의 거리에 따라, 가까이에 있는 면은 밝게, 멀리에 있는 면은 어둡게 처리해서 공기원근법효과를 연출하는 이미지에 대한 정보인 “depth map"을 활용하는 방법이었다. (그림 25) [51~52p]
3. 3-D 렌더링 3세대 기술들이 적용된 프로그램들의 인터페이스
- 결국 3-D CG 렌더링 프로그램들이 사용자의 이해를 돕기 위해서는 실제 빛의 현상과 광학현상을 가리키는 용어나 표현을 차용하여 인터페이스를 재구성할 수밖에 없었다. [55p]
4. 소결
5. 결론
- [표 4] 기술 변화의 세대별 구분과 인터페이스 구성 용어간의 일치관계 비교
세대별 분류
기술의 원리와 실제 빛의 작용 및 색채 현상간의 일치성
작업의 시간대비 효율성
기술과 인터페이스 용어와의 일치성
1세대
불일치
효율적
불일치(비직관적)
2세대
일치
비효율적
일차(직관적)
3세대
불일치
효율적
불일치(비직관적)
[63p]
- 현재의 컴퓨터에서 운용되고 있는 모든 색채재현 기술은 16비트(bit) 컬러 시스템을 기반으로 하고 있다 하지만 그것은 데이터 형식의 범위 안에서 재현할 수 있는 색의 수가 65,536가지로 한정되어있다. 이는 인간의 눈으로 인지할 수 있는 모든 색채를 구현하기에는 턱없이 부족한 숫자다. 16,780,000가지의 색을 표현하는 24비트 컬러 시스템에 이르러서야 16비트 컬러 시스템에서 구현하지 못하는 더 많은 수의 색을 재현함으로써 인간의 시각이 인지하는 모든 색채를 구현할 수 있게 된다. 앞서 살펴보았듯 16비트 컬러 시스템 환경은 데이터 처리량이 너무 많은 나머지 실제와는 전혀 다른 온갖 방식을 임의적으로 동원해야 몇몇의 색채 현상들을 겨우 재현해낼 수 있다. 그것에 비해 256배 증가한 데이터 량을 처리해야하는 24비트 컬러 시스템 환경으로 이전하게 될 경우, 실제 현상과 동일한 방식으로 색채를 재현하는 것은 현재 진행되고 있는 컴퓨터 처리 능력 발전 속도를 감안했을 때 지극히 요원한 일이 될 것이다. [64~65p]
참고문헌
Abstract