프로그래밍을 모르는 미디어 아티스트를 위한 프로세싱(Processing) 입문서를 소개합니다.

By | 2011년 4월 4일

호빵도 너무 뜨거우면 맛을 모릅니다.

그리하야, 새 책의 열기를 조금 식히고 4월 오후 세 시의 봄볕마냥 따뜻~한 기운으로 인사드리는 인사이트의 신간 손에 잡히는 프로세싱입니다. 
(네, 3월 22일에 발간되어 무려 2주가 지나서야 소개드린다는 뜻이지요;;;)


MakingInsight 시리즈도 슬슬 정비되어 가는 느낌이네요^^

손에 잡히는 아두이노

(왼쪽부터) 『손에 잡히는 아두이노』『아두이노 for 인터랙티브 뮤직』『손에 잡히는 프로세싱』

프로세싱(Processing), 너 누구냐


미디어 아트에 적을 두신 소수를 제외하면, 대부분 이런 반응일 것 같습니다. 낯설고도 낯선 이름 ‘Processing’
Processing

1. 오픈소스 프로그래밍 언어로, 이미지, 애니메이션, 인터랙션을 새롭게 만들고자 하는 사람들을 위한 환경이다. 

2. 미디어 아트를 작업할 수 있는 오픈소스 언어다. 사용법이 쉬운데다 오픈소스라는 이름에 걸맞게 웹사이트(http://processing.org/)에 튜토리얼과 라이브러리가 많이 공개되어 있어, 초보자라 하더라도 인터랙티브한 영상을 만들 수 있다는 장점이 있다.

쉽게 말해, 다음과 같은 작품들을 만드는 언어라 하겠습니다.
(자바가 깔려 있어야 볼 수 있습니다.)
프로세싱 작품 1 

Bubble Chamber (창이 뜨면 빈 화면을 클릭하세요)

bubble chamber


이 사이트에서 더 많은 프로세싱 작품을 볼 수 있습니다(여기에 있는 작품들은 모두 소스코드가 공개되어 있습니다.)

프로세싱 작품 2

Gas Works(1-3) (창이 뜨면 작품 화면을 클릭하세요.)

손에 잡히는 프로세싱』은 프로세싱(Processing)의 기초를 배우면서, 처음 프로그래밍을 접하는 사람이 프로그래밍을 한결 가볍게 익힐 수 있도록 구성되어 있습니다. 


  •  자바 문법을 간단하게 변형하였기 때문에, 프로그래밍을 처음 배우는 미디어 아티스트라도 쉽게 익힐 수 있습니다. 

  • 또 커뮤니티(http://processing.org/)에 라이브러리나 튜토리얼이 많이 공개되어 있어 처음 미디어 아트를 하려는 사람이 부담없이 접근할 수 있습니다. 

담당 편집자가 본 인상은, 미디어 아티스트뿐만 아니라 프로그래밍을 처음 접하는 사람이 보아도 좋겠다, 하는 것이었습니다. :)

『손에 잡히는 프로세싱』 목차 보기

[#M_||

1장 Hello

스케치하기와 프로토타이핑

유연성

거인들

가계도

함께 해요


2장 코드 시작하기

첫 프로그램

보여주기

저장하기

공유하기

예제와 참조문


3장 그리기

기본 도형

그리는 순서

도형의 특성

색채

사용자 정의 도형

주석

로봇 1:  그리기


4장 변수

변수 만들기

프로세싱의 변수

간단한 수학

반복문

로봇 2: 변수


5장 반응

따라가기

클릭하기

위치

타이프하기

로봇 3: 반응


6장 미디어

이미지

폰트

도형

로봇 4: 미디어


7장 움직임 다루기

속도와 방향

트위닝

랜덤한 움직임

타이머

순환하기


이동, 회전, 비례

로봇 5: 움직임


8장 함수

기본 함수

함수 만들기

반환 값

로봇 6: 함수


9장 객체

클래스와 객체

로봇 7: 객체


10장 배열

배열 만들기

반복과 배열

배열의 객체

로봇 8: 배열


11장 확장

3D

이미지 내보내기

Hello Arduino

커뮤니티


부록A 코딩 팁

부록B 데이터 타입

부록C 연산 순서

부록D 변수의 유효 범위


찾아보기

_M#]


목차가 보여주듯, 매우 명료하고 기초적인 내용을 다루고 있습니다.

번역은 프로세싱 강의를 하시면서 미디어 아티스트로도 활동 중이신 황주선 님께서 수고해 주셨습니다. 
책에 실린 황주선 님의 글을 옮겨봅니다. 이 글을 보시면 프로세싱이 어떤 의미를 지니고, 『손에 잡히는 프로세싱』이 어떤 컨셉의 책인지 이해하기 더 좋을 듯합니다!!

황주선 님의 글

미술대학을 나와서 프로세싱으로 작업을 하다가 어느덧 프로세싱 수업까지 하고 있습니다. 매 학기 수업을 시작할 때면 제가 처음 프로그램을 만들 때 느꼈던 막막함과 불안감을 학생들에게서 발견하곤 합니다. 학생들은 묻습니다.

저는 프로그래밍 경험이 전혀 없는데요, 수업을 따라갈 수 있을까요?

학기 초에 강의 소개를 하는 자리에서 어김없이 나오는 학생들의 질문입니다. 용기를 내어 수강신청을 하긴 했지만, 생소하고 불친절해 보이는 프로세싱의 인터페이스, 일일이 타이핑하며 영어로 된 코드를 입력해야 한다는 점, 코드를 설명한 참조문들 또한 한글이 아니라는 점 등이 적지 않게 부담스럽다고 말합니다. 무엇을, 어떻게 시작하고 진행해야 하는지 감조차 잡히지 않아서 불안하다고 말하기도 합니다. 
그러던 학생들이 학기말이 되면 어느새 손 바쁘게 키보드를 두드리며 코드를 작성하고 있습니다. 가끔씩 미간을 찌푸리며 골똘히 모니터를 들여다 보다가도 이내 무릎을 치며 고개를 끄덕이기도 하지요. 그리고 신기하게도 과제 전시회와 졸업 전시회에 전시물을 출품하고 최종 보고서를 제출합니다. 보고서에는 수백 줄도 넘는 코드들이 담겨 있습니다.
이런 것도 프로세싱으로 만들 수 있나요?
학생들은 도대체 프로세싱으로 무엇을 만들 수 있는지 모르겠다고도 합니다. 동영상이나 선배들이 산출한 결과물들을 보여주어도 속 시원하게 고개를 끄덕이지 못합니다. 
프로세싱으로 구현할 수 있는 것들을 나열하는 것은 매우 어렵습니다. 상상하는 거의 모든 것들을 구현할 수 있기 때문입니다. 물론, 프로세싱이 만능 툴은 아닙니다. 프로세싱은 인터랙티브 그래픽 제작에 최적화되어 있습니다. 즉, 프로세싱은 사용자가 정의한 인터랙션의 절차를 프로그램으로 번역하는 도구라고 할 수 있습니다. 따라서 인터랙션에 대해 이해하는 것이 매우 중요합니다. 
기능의 측면에서 보면 프로세싱은 점점 더 강력해지고 있습니다. 지금도 전 세계의 수많은 제 3 개발자들이 프로세싱의 기능을 확장해 주는 라이브러리를 앞 다투어 발표하고 있고 대부분 무료로 제공하고 있기 때문입니다. 프로세싱 웹사이트에 공식적으로 등록된 라이브러리들은 우리들이 사용할 수 있는 라이브러리의 일부분에 불과합니다. 
프로세싱은 초급자들만 사용하나요?
수업을 들은 학생 중에는 해가 바뀌어 학년이 올라간 뒤에 중급 이상의 과정을 수강하는 경우가 많습니다. 이들은 더 크고 복잡한 프로그램을 생각하고 있는데, 프로젝트의 규모가 커지면, 기본적인 함수들과 프로그램 작성법은 알고 있어도, 작은 프로그램과는 또 다른 접근 방법이 필요해지기 때문입니다. 
프로세싱은 분명 초급자들이 프로그래밍을 한결 수월하게 익힐 수 있도록 고안되었습니다. 그렇다고 프로세싱이 단조로운 결과만을 산출하는 소프트웨어라고 말할 수는 없습니다. 프로세싱은 사용하면 할수록 기분 좋은 그립감이 느껴지는, 마치 오래 사용한 연장처럼 여러분의 상상을 자유롭게 구현하는 도구가 될 것입니다.
학생들이 프로세싱을 더 수월하게 이해하고 익히기 쉽게 안내해주는 책이 없을까 고민하던 차에 우연히 이 책과 인연을 맺게 되었습니다. 간결하게 개념을 정리하고 다양한 예제를 통해 이해를 도우면서도, 방대한 양에 질리지 않도록 잘 구성한 책입니다.
 

.

6 thoughts on “프로그래밍을 모르는 미디어 아티스트를 위한 프로세싱(Processing) 입문서를 소개합니다.

    1. JOE;

      다루기가 쉽습니다. ^^ 레몬에이드 님이면 멋진 작품 하나 만들 수 있을 듯한데요~~?

      Reply
  1. 단비스

    조금은 어려울수 있는 내용을 꽤 독특하고 쉽게 접근을 하는듯 한데,
    나중에 서점에 나가면 한번 어떤 책인지 꼭 확인해 봐야겠네요~

    Reply
  2. wer

    아오 안그래도 프로세싱 정말 공부하고 싶었는데 지방이라 세미나 갈 시간도 없고 영어의 압박에 포기상태였는데 출간해주셔서 정말 감사합니다.

    Reply
    1. JOE;

      쉽게 쓰인 책입니다. ^^ 프로세싱을 시작하는 데 도움이 되었으면 좋겠어요~

      Reply

댓글 남기기