1. Lining up the Particles

1장에서는 particle을 생성하여 random한 location, direction, speed로 움직였다. 이번장에서는 10 pixel의 particle을 800x600 window에 맞추어 4800개의 particle을 배열해 보도록 한다.


ParticleController에서 random하게 배치 하던 것을 다음과 같이 바꾸어 준다.


이후 Particle을 생성해 주는 곳에서 Resolution만큼 만들어 준다. (setup에서 생성해 주도록 하였다.)


Particle 생성시 Radius를 random하게 주면 다음과 같은 효과를 볼 수 있다.




sin 함수와 cos 함수를 이용하면 더 멋진 그림을 볼 수 있다. ( 고등학교 때 좀더 열심히 공부할걸 그랬다. 대충 어떤 모습인지는 알겠지만 정확하게 왜 저렇게 표현 되는지 모르겠다..ㅡㅡ;; 예제를 쓴 사람도 삼각법에 대해 대학때 배웠지만 10%의 창조적인 생각과 90%의 삽질을 통해 얻은 함수라 한다. ㅎㅎ)



2. Recreating the Image with Particles

이번 Chapter에서는 gl::Texture가 아닌 Channel을 통하여 Image를 생성하는 법을 알아본다. Channel class는 grayscale image에 주로 사용된다. Image loading을 다음과 같이 수정하였다.



32f는 32bit floating point 숫자로 만들어 진것을 의미하며 0은 검정, 1을 하얀색을 나타낸다. particle은 channel이 전달 되면 자기 지검의 gray 값을 알아오고 그 값을 통하여 Color값을 만들어 놓는다. Radius도 같은 방식으로 변경하면 크기도 변경 할 수 있다. color와 radius를 동시에 업데이트 하면 다음과 같은 그림을 볼 수 있다.








'Internet Of Everything > Cinder' 카테고리의 다른 글

Cinder - Assets & Resources in Cinder  (0) 2014.12.16
Cinder - Chanpter4: Fine Tuning  (0) 2014.12.15
Cinder - Chapter 3: Infuluence  (0) 2014.12.11
Posted by 빨간 양말