Particle Expression Test.(linstep설명)
Particle_TimeRate_scale_test.mb
particle_Twinkle_Scale_Test.mb
linstep, noise, rand사용.
각 제목에 맞게 Particle을 Expression해본것.
linstep(start, end, parameter) 0과 1사이를 반환
예) particleShape1.opacity = linstep(0, 5, age);
particleShape1의 Opacoty(투명도)가 Age가 최소값이 0이고 최대값이 5이다.
그럼 Age가 0.25라면 투명도가 몇인가? 0.05이다
여기서. 왜 0.05가 나오는 것인가? 최소값이 0, 최대값이5라고 설정되어 있다. 그러니 0보다 작으면 0의 값을 최대값인 5보다 크면 1을 반환한다. 그래도 이해가 안가는 사람이 있을것이다. 나 또한 그랬다. 그렇게 2틀을 머리 꽁꽁싸매고 좌절하다가 번역된 문서의 차트를 보고 알았다. Age의 최대값이 5이다. Age가 2.5라면 Age의 최대값인 5를 나눠주면 Opacity가 나온다. 그러니 2.5%5 = 0.5라는 답이 나오는 것이다.
구하고자 하는 Opacity의 Age값 % Age의 최대값 인 셈이다.
Opacity = 투명도, transparency = 불투명
(헷갈리는 분들이 계실까 적어 놓는다)
Noise()
-1~1 사이의 임의으수를 반환해준다.
예) noise(time*0.2);
진폭에 해당되는 부분.
0.2를 곱해주니(적은값) 이런 그래프가 나왔다.
예0 noise(time)*5;
그래프의 높이에 해당되는 부분
이렇게 그래프의 높이가 -5에서 5사이까지로 범위가 -1~1까지인 범위가 늘어났다.
rand와는 다르게 고정값이 있어서 다른 곳에주어도 또는 다시 만들어서 noise값을 주어도 똑같은 수치가 나온다. seed로 고정되어 있기때문이다. 고정된 값이 아닌 random하게 사용하고 싶다면 rand함수를 사용하면 된다.
'Maya > Particles' 카테고리의 다른 글
Flow and Particle Expression. (0) | 2015.10.12 |
---|---|
smoothstep함수를 이용한 particle Expression. (0) | 2015.07.14 |
Particle test. (0) | 2015.07.06 |
Febreze Final. (0) | 2015.06.30 |
Field조절. (0) | 2015.06.25 |