cover story

CoverStory_TAG 3. 미디어 아트 저작 툴(Tool)

알 수 없는 사용자 2009. 6. 6. 04:09


미디어 아티스트는 어떠한 사람인가? 라는 질문에 좀 더 단순 무식함을 보태 그들이 기술자인가 아니면 예술가인가 라는 흑백논리의 질문을 해본다면, 당연히 그 답은 ‘예술가’가 될 것이다. 하지만 그들이 가진 ‘기술’ 혹은 ‘기술에 대한 지식과 이해’ 없이 진정한 미디어 아티스트가 되기는 쉽지 않다.

미디어 아트는 사진예술이 카메라라는 기계의 발명으로 인해 시작되었듯 다양한 매체기술의 탄생을 통해 본격적으로 장르화되었다. 그리고 ‘나는 뉴미디어 아트에요’라고 ‘다름’을 뽐내며 New Wave로서의 위상을 과시하던 시기를 지나, 이제는 장르를 뛰어넘어 각각의 예술 작품 및 행위에서 기술이 자연스럽게 녹아 들고 기술자체가 표면에 드러나기 보다는 Hidden Technology를 구현하는 쪽으로 관심의 방향이 바뀌고 있다. 그와 동시에 미디어의 사용이나 편집에 용이한 여러 가지 어플리케이션의 등장, 그것들을 능숙하게 다룰 수 있는 사용자 층의 성장, 그리고 OPEN SOURCE 개념의 확대는 미디어 아트 전반에 참여와 공유라는 변화를 가져오고 있다.
이러한 변화의 결과로 미디어 아트 작업을 직접 하거나 프로젝트에 반영하고자 하는 학생, 작가지망생, 기획자들도 점점 늘어나고 있다. 그들이 미디어 아트 저작 환경에 대해 이해하는 것은 사진을 찍고자 하는 사람이 카메라와 사진기술을 알아야 하는 이치와 동일하다.

앨리스온 세 번째 커버스토리는 미디어 아트에 입문하고 싶은 혹은 미디어 아트 저작 프로세스가 궁금한 이들을 대상으로 저작 환경의 전체적인 지평을 이해하는 데에 미약하게나마 도움을 주자는 취지로 기획되었다. 물론, 이러한 짧은 기획 기사가 광대한? 미디어아트의 분야 전체를 망라하는 작업이 되기는 힘들겠지만, 미디어 아티스트로의 입문을 시도하는 이들에게 다소의 참고가 되기를 바래본다.


미디어 아트 제작 툴에 관해 다루고자 할 때, 그 툴의 범주를 어디까지로 정의해야 하는가. 라는 고민을 하게 된다. 사진예술을 다시 한번 예로 들면, 사진은 ‘카메라’라는 기본 장비 외에도 사진을 위한 여러 도구 – 빛, 인공조명, 노출계, 반사판, 암실, 인화지, 필름, 현상액 등이 존재한다.
맥락은 조금 다르지만 미디어 아트 저작 환경 혹은 툴 또한 ‘컴퓨터’라는 강력한 매체를 중심으로 하여 그 내외로 다양하게 존재한다. 미디어 아트를 하고자 하는 사람은 먼저 컴퓨터라는 매체와 소통할 수 있어야 한다. 컴퓨터가 알아듣는 언어로 자신의 언어를 변환할 수 있어야 한다. 그러므로 언어는 중요한 저작 환경이다. 이것이 프로그래밍 언어이다. 우리가 흔히 아는 C, C++, JAVA 스크립트 등이 이에 해당된다. 하지만 이 모든 컴퓨터의 언어(Tag: JAVA, C++, Action Script, LINGO, Phython, Design by Numbers, Small Talk)를 완벽하게 이해해야만 원하는 작업을 할 수 있는 것은 아니다. 이러한 언어를 바탕으로 보다 많은 사람들이 이용하기 쉽도록 그래픽 인터페이스를 더해 만든 각종 소프트웨어가 있다. 소프트웨어의 종류는 너무나 많아 일일이 열거하기도 쉽지 않다. 이 소프트웨어는 상품으로 개발되기도 하고 무료로 배포되거나 개발자가 소스를 오픈/공유하고 대중에게 공동편집 및 제작을 요청하여 함께 업그레이드 해나가기도 한다. 이런 이유로 오픈 소스, 오픈 플랫폼에 대한 이해도 중요해진다. 이 외에도 제작에 필요한 하드웨어, 그리고 하드웨어를 다루는 데 필요한 소프트웨어와 통신프로그램 등 한가지 틀로 규정짓기 힘든 다양한 도구들이 존재한다. 그러므로 앞으로 소개할 여러 들은 저작 환경이라는 보다 큰 범주 안에서 이해되어야 하며, 또한 미디어아트나 인터랙션 자체를 위해 제작된 소프트웨어가 아니더라도 아티스트에 의해 그렇게 활용되어지고 더 큰 가능성을 발견할 수 있다면, 그것 또한 미디어아트 저작 환경/툴로 정의할 수 있을 것이다.

 
그런데, 본격적으로 미디어 아트 저작 환경 및 툴들을 자세히 소개해 보려고 하니, 두 번째 고민이 생긴다. 생각보다 너무나 많은 언어와 소프트웨어들이 존재하기 때문이다. 그래서, 주요하거나 주목할만한 미디어 아트 저작 툴을 편집자의 다소 주관적인 판단 하에 선별하여 소개하고자 한다. 예시로 살펴볼 작품들은 작품 속에 사용한 저작 환경의 특성이 잘 드러나 있는 경우, 작가가 일관되게 특정 툴을 주요하게 혹은 창의적으로 활용하고 있는 경우 등을 위주로 다루고자 한다.

 

한가지 덧붙이자면 이 모든 툴이니 기술이니 하는 얘기에 앞서 미디어아트의 내용과 질적 향상이 중요하다는 것은 모두가 공감하고 있는 전제일 것이라는 점이다. 기술은 그것들을 뒷받침 해주고, 또 새로운 길을 모색할 수 있도록 도와주는 장치이다. 보다 기술친화적인 미디어 아트의 특성 상, 우리는 두 가지 능력을 동시에 갖춰야 하는 운명에 처해 있을 뿐이다.


---------------------------------------------------------------------------------------------------

Processing

http://www.processing.org

프로세싱은 MIT Media Lab의 Ben Fry(http://benfry.com)와 Casey Reas(http://reas.com)에 의해 개발이 시작된 오픈 소스 툴이다. JAVA로 제작되었으며, 프로세싱에서 작성된 프로그램은 자바 애플릿으로 실행된다. 프로세싱은 자바에 비해 단순화된 프로그래밍이 기본적인 특징이다. 웹사이트에 공개되어있는 튜토리얼과 라이브러리, 포럼 등을 활용해 초보자라도 프로그래밍에 관한 기초지식을 익히면서 단순한 computational drawing부터 웹 캠 등을 활용한 인터랙티브한 소스들까지 만들어 볼 수 있다. 프로세싱은 코드 아트부터 하드웨어와의 시리얼 통신을 이용한 피지컬 컴퓨팅까지 다방면의 미디어 아트 작업에 활용되고 있는 주요한 툴이다. Video 파일을 직접 로딩하여 컨트롤하는 작업에는 취약할지 모르지만 실시간 영상 처리는 꽤 효과적이다. 아래에 소개하는 작품들은 주요 툴로 프로세싱을 이용하여 제작된 작품들을 작품의 성격별로 분류하고 그 분야의 활동이 활발한 작가의 작품 들 중에서 선별하여 예시로 나타낸 것이다. 보다 자세한 정보는 링크를 통해 직접 확인해보시길 바란다.

> Computational Drawing
좌표와 컴퓨터의 수학적 계산을 이용한 드로잉. 프로세싱은 기본적으로 3D 공간 구조를 가지고 있으며 이미지의 픽셀값을 데이터로 읽어 드로잉에 반영하거나 맵핑작업을 할 수 있다. VJing 퍼포먼스 등에도 많이 활용되고 드로잉 자체로도 작품화되며 끊임없이 그 한계를 넘어서는 연구가 지속되고 있다.



Robert Hodgin http://www.flight404.com


> Data Visualization
대량의 데이터를 프로그래밍 연산을 통해 수치나 이미지로 변환하는 작업, 실시간 DB연동을 통한 비주얼라이징 등의 작업은 프로세싱을 통해 많이 이루어진다.

All Streets ⓒ Ben Fry http://benfry.com



New York Talk Exchange Aaron Koblin at http://www.aaronkoblin.com


> Interactive Audiovisual

Footfalls ⓒ Golan Levin at www.flong.com

국내에서도 processing과 관련한 교육 프로그램이 진행된 사례가 종종 발견된다. 아트센터 나비 아카데미 및 문지문화원 사이, 각 대학 관련 lab 에서 종종 관련 프로그램을 진행하고 있다. 관심 있는 분들은 본 기사 하단의 reference를 참조해보길 바란다.

Tag: Openframeworks

http://openframeworks.org

오픈프레임웍스에 대해서는 앨리스온 웹리뷰를 통해 한번 소개된 적이 있다. 프로세싱은 JAVA 그래픽 라이브러리로 이뤄진 툴인데 반해, 오픈프레임웍스는 C++ 그래픽 라이브러리 툴이다. 오픈프레임웍스의 장점은 프로세싱에 비해 속도가 빠르다는 점이며, 이것 역시 open source 프로젝트이며 현재 지속적인 개발 중에 있다. 프로세싱으로 작업을 해온 작업가들도 요즘엔 이 툴에 주목을 많이 하고 있다고 한다.

Tag: Mobile Processing
http://mobile.processing.org , http://www.francisli.com/
모바일 프로세싱은 모바일 폰을 위한 소프트웨어를 디자인하거나 프로토타입을 만들고자 하는 사람들을 위한 오픈 소스 프로그래밍 환경이다. 모바일 프로세싱은 프로세싱에 기반하여 만들어졌으며 거의 같은 형태를 공유한다.

Max/MSP/Jitter

http://www.cycling74.com

프로세싱이 타이핑 기반의 프로그래밍인데 반해 Max/MSP/Jitter는 보다 직관적인 비주얼 인터페이스 프로그래밍 방식을 취한다. 순서도를 그리듯이 노드를 선으로 연결하는 것으로 프로그래밍을 할 수 있다. 복잡한 프로그래밍 원리를 이해하지 않고도 이용이 쉽다는 장점이 있어 많이 활용되고 있다. MAX는 기본 프로그래밍, MSP는 음악관련 프로그래밍, Jitter는 그래픽 관련 프로그래밍을 다룬다. 주로 실시간 MIDI 제어, MIDI 기반의 알고리즘 작곡, Synthesizer 프로그래밍, 실시간 영상 재생, 처리 및 제어, Audio-Visual, Sensor를 이용한 퍼포먼스 등 폭넓은 분야에서 효과적으로 이용된다. Max/Msp/Jiter의 경우, 국내 사운드 관련 미디어아티스트들에게도 매우 인기가 높은 개발환경 or 프로그램이다. 이 역시도 종종 교육 프로그램 혹은 워크샵으로 진행되고 있으니, 관심있는 분들은 해당 교육기관의 프로그램들을 잘 살펴보기 바란다.


> Audio-Visual performances (VJing)
ⓒ Alva Noto at http://www.alvanoto.com/

> Realtime Motion Capture

ⓒ Yacine Sebti at http://www.imal.org/yacine/

Tag: VVVV

http://vvvv.org
VVVV는 실시간 영상 처리를 위한 툴이며 피지컬 인터페이스, 실시간 모션그래픽, 오디오, 인터랙티브 비디오 작업 등이 가능하도록 설계되어 있다. VVVV는 Max/MSP처럼 비주얼 프로그래밍 인터페이스를 이용하여 프로그래밍하는 방식의 툴이다. 현재는 윈도우에서만 사용할 수 있다. Max/MSP에 비해 3D그래픽이 탁월하게 구동이 되는 강점이 있다.

FLASH / Action Script

플래시는 웹 애니메이션을 위한 가벼운 소프트웨어에서 출발해 액션스크립트라는 강력한 무기를 장착한 고급 소프트웨어로 변모했다. 액션스크립트는 프로세싱과 마찬가지로 자바스크립트에 기초하여 만들어졌기 때문에 둘 사이에는 유사점이 많다. 하지만 액션스크립트는 벡터드로잉 기반이라는 점과 3D 공간 구현은 가능하지만 프로세싱처럼 본질적으로 3D 공간 구조로 만들어진 것은 아니라는 점에서 차이가 있다. 액션스크립트는 객체지향 프로그래밍 에 속하며 웹 프로그래밍 언어로서 널리 쓰이고 있다. 플래시는 기본적으로 시리얼 통신이 불가능하기 때문에 아직까지 미디어 아티스트들보다는 모바일 프로그램 개발자나 디자이너들이 더욱 많이 활용하지만 미디어 아트영역 내에서도 창의적으로 액션스크립트를 이용하여 눈길을 끄는 작업들이 꽤 많이 있다.

> Generative Art, Computational Design
잭슨 폴록의 액션 페인팅 기법에서 영향을 받은 조슈아 데이비스나 에릭 나츠키와 같은 아티스트들의 작업은 플래시의 2D 벡터 드로잉에 자신만의 액션스크립트를 적용하고 그 안에서 우연적 효과를 노림으로써 매번 다른 작품들을 탄생시킨다.



Joshua Davis at http://www.joshuadavis.com/


Erik Natzke at http://jot.eriknatzke.com


Arduino (Tag: Wiring, Gainer)
http://www.arduino.cc/

아두이노는 AVR[각주:1]을 일반인이나 예술가들이 보다 쉽게 접근하여 쓸 수 있도록 만들어놓은 통합 환경(IDE)이다. AVR (주로 ATmega 168)을 장착한 아두이노 보드와 오픈소스 프로그램을 제공한다. 본래 AVR 프로그래밍은 코딩과 WinAvr을 이용한 컴파일, 보드에 ISP 장치를 연결하여 프로그램 업로드, 디버깅 등의 여러 과정을 거쳐야 하는데 아두이노는 USB로 컴퓨터와 연결하여 전원을 충당하면서 코딩부터 업로드까지의 과정을 보다 쉽고 단순하게 처리할 수 있기 때문에 그 편의성에 있어 매우 유용하다. 모든 코드 소스와 회로도가 오픈되어 있으며, 아두이노 보드의 핀에 확장보드를 꽂아 얹는 것으로 무선통신, MIDI, 블루투스, 각종 센서 모듈로 그 기능을 확장할 수도 있다. 하지만 아두이노만 가지고 원하는 모든 것을 할 수 있다는 환상을 가지는 것은 위험하다. 쉽게 접근 할 수 있는 만큼, 그 안에 한계가 존재할 수 밖에 없는 것도 분명한 사실이다.



> Physical Computing
피지컬 컴퓨팅은 인간의 신체와 신체적 행위를 통해 컴퓨터와 인간이 어떻게 소통할 수 있는가를 탐구하는 작업이다. 사람의 소리, 움직임 등에 반응하는 기계의 소리, 이미지, 움직임 등의 기본 인터랙션 방식을 바탕으로 굉장히 다양한 작업과 시도들이 계속되고 있다.

Python
http://www.python.org/ , http://www.python.or.kr/pykug/
파이썬은 다양한 종류의 소프트웨어 개발에 주로 사용되는 객체 지향 프로그래밍 언어이다. 파이썬은 C, C++등에 비해 문법이 비교적 간단하기 때문에 배우기 쉽다. 인터프리터 방식으로 한줄 한줄 즉각적으로 코딩에 대한 결과를 확인할 수 있는 강점이 있다. 또 다양한 라이브러리를 지원하고 있어 적은 양의 코드로도 GUI 프로그램 등을 빨리 제작할 수 있다. Python은 기타 다른 언어에 비해 C/C++로 python module을 작성하기가 쉽고 문서화가 잘 되어 있어 작업의 효율을 높일 수 있다.

Animata
http://animata.kibu.hu
애니마타는
Kitchen Budapest(http://www.kitchenbudapest.hu)의 Peter Nemeth, Gabor Papp, Bence Samu가 개발한 오픈소스 실시간 애니메이션 소프트웨어이다. 한 장의 이미지만을 가지고도 움직임이 있는 애니메이션을 만들어낼 수 있고 퍼포먼스 등에 활용할 수 있는 인터랙티브 프로젝션 기능이 있다. 튜토리얼 비디오를 한 번 보면 어떻게 사용하는지 금방 이해할 수 있을 정도의 툴이며 코딩이나 수학적 계산이 필요없는 그래픽 툴이라고 할 수 있다.



Scratch
http://scratch.mit.edu
스크래치는 인터뷰와 국내 워크샵 소식 등을 통해 앨리스온에서 여러번 언급된 적이 있는 툴인데, 일단 비주얼 인터페이스 프로그래밍 방식을 취하며 아이들을 교육하기 위한 목적으로 설계되었기 때문에 (상대적으로) 매우 쉬운 툴이다. 블록들을 붙여서 게임이나 애니메이션을 만들수 있고 웹 상에서 오픈/공유가 활발하게 이루어진다.

---------------------------------------------------------------------------------------------------

RESOURCES

  

>>COMMUNITY

CodeTree , Generator.x , Linux Audio Developers , Open Circuits , Pixelsumo , We Make Money Not Art

 

>> LEGAL RESOURCES
Center for the Study of Public Domain Arts Project

Creative Commons

Free software

GNU General Public License

BSD License

 

>> 국내 교육 워크샵 및 아카데미

문지문화원 미디어 아트 랩 http://saii.or.kr

나비아카데미 http://www.nabi.or.kr

KAIST http://www.medialab.re.kr/blog/
동국대학교 MARTE Lab http://music.dongguk.ac.kr/mmjw/

홍익대학교 DIC http://openux.co.kr/

숭실대학교 Maat Labhttp://www.maat.kr/
이화여자대학교 http://iuum.com



  1. AVR: Atmel사에서 생산되는 ATMEGA128, ATMEGA8, ATMEGAxxx 등의 시리즈를 통틀어 지칭하는 마이크로 컨트롤러 칩을 의미함. [본문으로]