컴퓨터아트 그래픽
평면과 입체사이에서…
컴퓨터그래픽은 2차원 작업과 3차원 작업으로 크게 분류할 수 있는데,그 표현을 흔히 디멘젼(Dimension:차원)의 첫자로 표현된 ‘2D’와 ‘3D’로 간단히 말하곤 한다. 컴퓨터 그래픽을 하기 위한 공간을 X축과 Y축으로만 구분하여 평면작업을 할 경우라든가,베이직같은 언어 소프트웨어로 도형을 그리는 경우,2차원 그래픽 패키지(예: 페인트-브러시,디럭스-페인트)에 아이콘(그림으로 된 명령)을 선택하여 그린 그림들을 모두 2D 페인팅이라고 한다. 컴퓨터 그래픽 첫 입문과정에서 주로 대할 수 있는 이 작업은 지금까지 손으로 했던 회화작업들을 컴퓨터가 대신 쉽게 표현해주고 있어 아티스트들이나 그래픽 디자이너들에게 많이 응용되고 있다. 현재 각 기업체나 디자인 사무실,출판업계 등에서 인기가 높다.또한 X축,Y축 두 값만의 데이터 변동으로 쉽게 애니메이션도 할 수 있어 만화영화,방송타이틀 등에도 유효하다. 그러나 컴퓨터의 이용은 무능력한 인간(?)도 할 수 있는 평면작업에서 보다는 세밀한 수학적 계산이 필요한 3차원에서 그 진가를 더욱 발휘하고 있다. 공업디자인,인테리어 그리고 건축분야에서의 입체작업은 CAD시스템으로 작업한 것으로 손쉽게 3차원 투시를 볼 수 있게 하고, 그림표현의 전문가가 아니어도 기본적인 색감각과 구성력만 있으면 3차원 설계에서 쉽게 색감표현을 할 수 있게 해준다.또 사람의 손으로는 표현이 어려운 유리,거울 등의 표현도 자유자재로 할 수 있다. 이번 호에는 먼저 2D 페인팅에서 볼 수 있는 알고리즘(처리방식)에 대해 알아보고 다음 호에는 3D 알고리즘을 설명하기로 한다.
2D 알고리즘에 대해서
컴퓨터를 사용하다 보면 알고리즘algorism이라는 말을 자주 들을 수 있다.컴퓨터 그래픽에서 알고리즘하면 어떤 처리를 위한 수학적 계산 규칙들을 지칭하는 용어로 쓰이고 있지만,여기서는 어떤 그림을 그리는 데 있어 서의 주요한 표현 방식들이라고 정의해 보자.즉,뒤에 설명하겠지만 안티-앨리어싱,디더 그리고 각종 메꿈fill이 무엇을 의미하는가를 알아보고 그 응용 예를 들고자 한다. 예에 쓰이는 시스템은 IBM컴퓨터 VGA그래픽보드와 디럭스-페인트 소프트웨어를 이용했다.
그라데이션을 이용한 메꿈 작업
실제사용예: 풀잎, 호랑이의 표면처리에서 그라데이션-메꿈이 잘 나타나고 있다.
브러시의 다양한 모드를 이용해 그린 작품
안티-앨리어싱anti-aliasing
컴퓨터로 그림을 그릴 경우, 가장 치명적인 약점은 모니터 방식(레스터 스캔)이 수많은 점들의 모임이기 때문에 생기는 해상도에서이다. 특히 사선을 긋거나 면이 기울어진 경우 계단모양으로 울퉁불퉁한 격자가 보이게 된다.이러한 현상을 앨리어싱aliasing이라 해서 컴퓨터 그래픽 초창기부터 대두된 문제였다.많은 그래픽 연구가들이 이를 해결하기 위해 부단히 노력하였는 데 그 방식이 바로 안티-앨리어싱anti-aliasing 기술이다. 물론 컴퓨터 그래픽 시스템이 계속 발달하여 앞으로 1024×1024의 해상도 이상을 유지한다면 하등의 문제가 생기지 않겠지만 그렇지 못하다면 앞으로 당분간은 우리의 PC에서 이 문제가 실무적용의 어려움에 봉착하는 가장 큰 이유가 될 것이다(필자는 컴퓨터 그래픽의 특징이라고 생각되어 크게 개의치 않지만). 안티-앨리어싱의 일반적 방식은 선이나 면의 경계선 부분에 약간의 중간톤을 형성하여 거리를 두고 보았을 때 계단모양의 격자가 덜 보이게 하는 방식이다.실제로 IBM 디럭스-페인트 소프트웨어의 퍼스펙티브perspective상황에서 옵션option으로 들어가면 NONE,LOW,HIGH의 세 명령이 있다.보통의 경우에는 항상 NONE을 선택한다.필요에 따라 안티-앨리어싱을 걸려면 LOW,HIGH를 지정하여 안티-앨리어싱이 심하거나 덜한 정도를 선택할 수 있다. 마찬가지로 아미가 컴퓨터의 디럭스-페인트에서도 퍼스펙티브의 셔팅setting에 들어가면 같은 명령이 있다. 그러나 아직 디럭스-페인트의 안티-앨리어싱은 완벽하지 못하다.그림에서와 같이 이 방식을 사용했을 경우 처리속도가 매우 느려진다는 점과 IBM 디럭스-페인트에서는 선이 너무 굵어보이는 것,그리고 아미가의 디럭스-페인트에서는 선이 흐려진다는 단점이 있다.
메꿈 알고리즘과 그라데이션
컴퓨터를 사용하는 그림이든 손으로 그린 그림이든 그림을 그리기 위한 단계는 우선 외곽선부터 그리고 나서 부분부분 정해진 칼라로 색을 메우게 된다. 이 작업을 보통 폐곡선 안부분을 정해진 색으로 메운다하여 메꿈 알고리즘fill algorism이라 부른다. 물론 MSX-BASIC과 GW-BASIC에서 페인트 명령을 써본 독자라면 이미 알고 있겠지만,모든 그래픽 패키지 소프트웨어가 기본적으로 갖춘 명령어 중 하나이다. 보통 붓이나 물감통 표시가 있으면 그것은 틀림없이 메꿈을 위한 아이콘이라고 생각해도 무방하다. 컴퓨터 그림이 내부적으로 2진수 숫자로 된 데이터라는 것은 전에도 설명했다.명령을 주면 2진수로 된 데이터를 조사(검색)하여 다른 색 데이터를 만나면 메꿈을 멈추는 그래픽 방식을 말하며 따라서 패턴 메꿈과 그라데이션 메꿈은 그래픽 소프트웨어의 우열을 가릴 수 있는 중요한 요인이 된다. 고급 PC기종인 매킨토시의 유명한 페인팅 소프트웨어인 픽셀-페인트에서는 부러울 정도의 수많은 패턴이 준비되어 있다. 또한 그라데이션도 fill-effect라하여 여러 다양한 방식들이 있다.방송국에서 인기있는 PAINT-BOX라는 2D 그래픽 전용 시스템도 그라데이션 작업이 매우 우수하여 멋진 작품들을 제작할 수 있다. 디럭스-페인트에도 PATTERN FROM BRUSH라는 기능이 있어 브러시에서 딴(추출한) 모양을 쉽게 패턴 메꿈으로 처리할 수 있다. 또한 디더dither 기능을 이용해서도 그라데이션할 수가 있다.떨림이라고 해석되는 디더는 다른 색사이의 중간톤을 만들기 위해 서로의 색들을 섞는 방식으로 디더가 0이면 섞임이 전혀 없는 직선상태가 되고 디더가 높을수록 너무 많이 섞여 거칠어지나 알맞게 잘 선택하면 보기좋은 그라데이션을 할 수 있다.
매핑작업
실제사용예
매핑mapping
현실세계의 모든 대상물에는 질감texture이 존재하므로 컴퓨터 그래픽에서도 질감표현을 위한 자연스러움에 대한 연구가 많다. 예를 들어 귤의 표면돌기를 표현하면서 원모양으로 한다거나, 나무와 대리석의 질감 그리고 산악의 돌출부위까지도 원래의 모습대로 처리해줄 수가 있다.매핑의 의미는 이와같이 특수한 질감을 평면에 그린 후 임의의 형태로 감싸주는 형식으로 작업을 대폭 줄여 주는 요인이 된다. 디럭스-페인트에서 완벽한 매핑기능을 기대하기는 어려우나 FILL-TYPE이라는 옵션기능 안에 있는 랩(wrap:감싼다는 뜻)명령이 거의 유사하게 표현해준다. 먼저 화면에 임의의 질감있는 그림을 그려 브러시로 정해진 영역을 잡은후(‘딴다’라는 표현을 쓴다.)WRAP 명령을 선택하여 표현하고 싶은 형태로 그리면 입체감을 형성하여 그려주게 된다.
브러시brush의 여러가지 모드들
디럭스-페인트의 메뉴 중 모드에는 브러시를 이용해 여러가지 효과를 줄 수 있는 기능들이 있다. 첫째로 스미어smear는 ‘문지르다’라는 뜻으로 색들의 경계부분을 파스텔화에서 처럼 문질러 흐트러 놓는데 부분적으로 깨어져 보이게 하는 데 적격이다.또한 쉐이드shade는 정해진 범위 내의 색이 겹치게 되면 다음 색 즉,보통 어두운 색을 표현해주어(그림자를 주어)가층층히 겹친 느낌을 주며,브랜드blend는 색과 색을 섞어서 중간톤을 만들어 보다 부드럽게 만들어 준다.또 사이클cycle은 정한 범위의 색들을 버튼을 누를 때마다 다음 색으로 바꿔주는 기능을 한다.스무스smooth는 안티-앨리어싱과 비슷한 효과를 주나 좀더 광범위하게 중간톤을 형성하여 상당히 부드러운 느낌을 줄 수 있다.틴트tint는 여러가지 다른 색조들의 명암정도를 임의의 색범위 내에서 바꿔주는 기능을 한다.
다음 호에는……
지금까지 평면 처리되는 여러가지 기능에 대해 알아보았다.물론 이외에도 많은 기능들이 있겠으나 지면 관계상 생략하기로 하고 다음 호에서는 입체 표현을 위한 설계와 렌더링,특히 가장 완벽한 렌더링이라 할 수 있는 레이-트레이싱ray-tracing에 대한 기본 알고리즘을 자세히 알아보기로 하자.

컴퓨터아트 