티스토리 뷰

Processing

[Processing] Basic of Drawing (1)

생각많은 소심남 2014. 2. 7. 01:31

Processing이 Version 2로 넘어오면서 여러가지 툴도 추가되고 좋아진거 같다. 다만 기존에 하고 있던 SimpleOpenNI는 Processing 1.5까지만 지원되고 개발자도 2.0 대 부터는 손을 놓은거 같다. 아무튼 Coursera에 Introduction To Computational Arts 라는 이름으로 Processing 강좌가 진행되고 있다. 방학때 Processing들어보고 싶은 사람은 한번 들어보면 좋을 거 같다. 물론 영어다..


<https://www.coursera.org/course/compartsprocessing>


간단하게 Basic of Drawing 강좌에 나온 내용을 요약해보려고 한다. 



우리가 보고 있는 이 창은 Sketech 라고 하는 Processing IDE다. Java 기반이고.. 우리는 여기다가 코드를 넣을 수 있다. 단순히 코드만 넣는 게 아니라 JVM 상에 이미지, 도형, 동영상, 음악 같은 것들을 다룰 수 있다. 이 모든게 다 Canvas 라고 하는 화면상에서 이뤄진다. 그러면 일단 Canvas를 생성해야 된다. 간단하게 size() 함수를 쓰면 되겠다.



나와있는 것처럼 창의 크기를 지정해줄 수 있고, 첫번째는 인자는 width, 두번째 인자는 height 를 받게 된다. 이렇게 하고 좌측 상단에 있는 재생 버튼을 눌러주면 창이 딱 뜬다.


그런데 이걸로 예술을 할려는 이상 지금의 화면은 뭔가 우중충하다. 그러면 배경을 줘야 하는데, 이 배경을 지정해주는 함수는 background()이다. Version 2부터 생긴 기능인거 같은데 하다가 함수가 뭘뜻하는지 모르겠다. 인자가 뭔지 모르겠다하면 마우스 우클릭을 누르면 Reference로 바로 연결되는 메뉴가 있다. 그걸로 찾으면 된다.



여기에 따르면 background()에 넣을 수 있는 다음과 같다,



우리는 배경에 대해서 RGB값을 넣을 수도 있고, 혹은 이미지로 채울 수도 있다. 아마 포토샵같은걸 많이 다뤄본 사람이라면 가장 익숙한 입력방법이 #RRGGBB 일 것이다. 그런데 그게 아니고서는 그안에 값을 뭘 넣어야 할지 모를 수 있다. 이때 Tool에 있는 Color Selector를 선택하면 자신이 원하는 색깔을 찾을 수 있을 것이다.



이렇게 찾은 색값을 아까 그 background() 안에 넣어주면 되겠다. 결과는 다음과 같다.


뭐 이런식으로 응용해볼 수 있다. 어차피 RGB값을 넣는 거라면 시간에 따라서 배경이 변하게끔도 만들 수 있지 않을까? 이렇게 말이다.



좀 허접하긴 한데 이렇게 millis()라는 시간함수를 쓰면 배경도 시간에 따라서 막 바꿔줄 수 있다. 잠깐 끊고 도형 그리는 내용을 이어서 해보려고 한다.


댓글