- [maya] Dynamics-Particle Basic
- 공부/Maya
- 2011. 1. 28. 11:04
[그림01]
Particles > Create Emitter에 옵션 박스를 열어 주겠습니다. 앞에서 배운 Omni 타입과 이제 배우게 될 Directional 타입 옵션박스의 차이를 보여주고 있습니다.
[그림02]
[그림03]
Omni 타입은 사방으로 Particle을 방출을 시키지만 Directional 방식은 사용하는 유저가 방향을 정할 수 있습니다. 방향을 정하는 옵션이 Direction X,Y,Z 이고 가장 아래에 있는 Spread 옵션은 Emitter에서 방사되는 방사각을 지정할 수 있는 옵션입니다.
[그림04]
Spread의 값이 높을 수록 방사각이 넓어지는 것을 볼 수가 있습니다. Spread값은 1이 최고이며 180도로 Particle이 방사되며 0.5일 경우 90도로 방사가 됩니다.
Direction에 관해 알아보도록 하겠습니다. Direction은 방향을 조절해 주는 것이라고 보시면 간단합니다. 간단한 예제를 통해 Direction의 사용법과 Directional 타입의 사용에 대해 알아보겠습니다.
Particles > Create Emitter에 옵션 박스를 열어 주었습니다 그런 후 다음과 같이 옵션을 만들어 준 후 Emitter를 만들어 줍니다.
[그림05]
Play버튼을 클릭하여 Particle의 움직임을 확인하여 봅니다.
[그림06]
다음과 같은 움직임을 볼 수 있습니다.
Direction을 Y축으로 바꾸어 주었고 Spread값을 1로 바꾸어준 후 Rate 값을 500으로 늘려 주었습니다. Time Slider에서 1프레임으로 돌아가 Rate값에 Animation을 주겠습니다.
1프레임으로 돌아가 Rate값을 0으로 만든 후 마우스의 RMB버튼을 클릭하여 Key Selected를 선택해 주면 다음과 같이 살색으로 변하게 되며 Animation을 만들어 주었다는 뜻입니다.
[그림07]
다시 19프레임으로 가서 Rate 값을 0으로 만든 후 마우스의 RMB버튼을 클릭하여 Key Selected를 선택해
Animation을 만들어 준 후 다시 20프레임으로 가서 Rate값을 10000으로 만들어 준 후 Key Selected를
선택해 Animation을 만들어 준 후 다시 21프레임으로 가서 Rate값을 0으로 만든 후 Key Selected를 통해
Animation을 만들어 줍니다. 다음과 같은 Particle입자들의 움직임을 볼 수가 있습니다.
[그림08]
순간적으로 Particle 입자들이 방출되는 것을 볼 수가 있을 것입니다. 그럼 여기에 색을 넣어서 좀더 보기 좋게 만들어 보도록 하겠습니다. 우선 Particle입자들의 모양을 바꾸어 보겠습니다.
Particle 입자를 선택을 한 후에 Ctrl +A 버튼을 눌러 Attribute Editor Box를 열어 Render
Attribute > Particle Render Type을 Multi Point로 만들어 준 후 다음과 같이 값을 넣어
줍니다.
[그림09]
[그림10]
Per Particle(Array) Attribute 창을 보게 되면 여러 가지 Particle의 속성을 제어 할 수 있는 창이 있습니다. 이 창에 Opacity의 속성과 Color 의 속성을 만들어 Particle에 색상을 넣어 주겠습니다.
[그림11]
Add Dynamic Attribute 창에 Opacity 버튼을 눌러 줍니다. 다음과 같이 체크 해준 후에 Add Attribute 버튼을 눌러 줍니다.
Add Dynamic Attribute 창에 Color 버튼을 눌러 줍니다. 다음과 같이 체크 해 준 후에 Add Attribute 버튼을 눌러 줍니다.
[그림12]
[그림13]
위와 같이 만들어 주게 되면 Per Particle(Array) Attribute 창에 다음과 같은 창이 만들어 지게 됩니다.
이렇게 만들어 진 것을 확인한 후에 opacityPP 창에 마우스의 RMB버튼을 클릭하여 Create Ramp 버튼을 눌러
줍니다. 그런 후 rgbPP 창에 마우스의 RMB버튼을 클릭하여 역시 같은 Create Ramp 버튼을 눌러 줍니다. 그럼 다음과
같이 바뀐 것을 볼 수가 있습니다.
[그림14]
[그림15]
여기까지 만들었다면 거의 다 만들어 진 것입니다. rgbPP 창에 마우스의 RMB버튼을 클릭 하여 Edit Ramp 버튼을 클릭하게 되면 아래와 같은 창이 나오게 됩니다.
[그림16]
그림과 같이 색상을 변경해 준 후에 Play 버튼을 클릭 하여 particle 입자들의 움직임을 확인하여 봅니다. 앞에서 만들어진 색이 Particle에 적용된 것을 볼 수 있습니다.
[그림17]
[그림18]
예제로 알아 본 것과 같이 옵션들을 조절하여 사용자가 원하는 방향과 입자들의 방사각 등을 지정할 수 있어 응용의 범위가 크니 많은 조절과 연습이 필요합니다.
마야는 응용을 해야 쓸 수 있는 기능들이 아주 많이 있습니다. 이번에는 불꽃을 내뿜는 로켓을 만들어 보도록 하겠습니다. 마야의 다른 기능들도 많이 사용하니 잘 보시구 따라하시기 바랍니다.
Create > Nurbs Primitives > Sphere를 클릭 하여 구를 한 개 만들어 줍니다. 그런 후 다음과 Scale Tool을 이용하여 다음과 같은 모양을 만들어 줍니다.
[그림19]
다음은 위에 Object가 Animation이 될 수 있도록 만들어 보도록 하겠습니다. 우선 다음과 같이 메뉴를 변경해 줍니다.
[그림20]
다음의 기능을 사용하기 위해 메뉴를 바꾸어 준 것입니다.
[그림21]
[그림22]
우선 Object가 따라서 가게 될 Curve를 만들어 주어야 합니다.
Create > CV Curve Tool을 이용하여 아래와 같이 Curve를 만들어 줍니다.
[그림23]
이제 Curve를 따라서 움직이는 Animation을 만들어 주겠습니다. Object를 잡은 후에 Curve를 잡고
Animate > Motion Paths > Attach to Motion Path의 옵션박스를 열어 다음과 같이 값을
바꾸어 줍니다.
[그림24]
□ Start/End - Animation의 시작과 마지막 프레임을 정해주는 옵션입니다.
위와 같은 값을 만들어준 후에 Attach 버튼을 클릭 하여 Object를 Curve에 붙여 줍니다.
[그림25]
200이란 숫자는 마지막 프레임을 뜻하고 있습니다. Play버튼을 눌러 움직임을 확인합니다. Curve를 따라서 움직이는 Object를 볼 수 있을 것 입니다.
이제 불꽃을 만들어 보겠습니다. 다음과 같이 메뉴를 바꾸어 줍니다.
[그림26]
Particles > Create Emitter 의 옵션박스를 열어 다음과 같이 값을 조절해 줍니다.
[그림27]
[그림28]
Apply 버튼을 클릭 하여 Emitter를 만들어 줍니다. 만들어진 Emitter를 Object에 붙여 붙여보도록 하겠습니다.
Emitter를 Move Tool 버튼을 이용하여 다음과 같은 위치로 이동합니다.
[그림29]
[그림30]
그런 후 Emitter를 먼저 선택한 후에 Object를 선택합니다.
Edit > Parent 버튼을 누르게 되면 아래와 같이 변하게 됩니다.
[그림31]
Play 버튼을 클릭 하여 Particle의 움직임을 확인하여 봅니다. Emitter가 Object를 따라 움직이며
Particle 입자들이 나오는 것을 보실 수 있습니다. 앞에서 배운 방법을 이용하여 색상도 넣어 보시기 바랍니다.
이번에는 Emit from Object에 관해 알아 보도록 하겠습니다. Emit From Object를 사용하게 되면
Particle, Object, Curve 등에 Emitter를 만들어 Particle 입자들의 움직임을 제어할 수 있습니다.
Particles > Emit from Object의 옵션박스를 열어 봅니다.
[그림32]
앞에서 배운 Create Emitter의 옵션과 같은 것을 볼 수가 있습니다. Create Emitter와 Emit from Object의 차이점은 다음과 같습니다.
□ Create Emitter - Object 나 Curve등에 상관없이 Emitter를 만들 수 있음
□ Emit from Object - Object 나 Curve등이 있어야 Emitter를 만들어 사용이 가능
예제를 통해 Emit from Emitter의 사용법을 알아보도록 하겠습니다.
Create > CV Curve Tool을 이용하여 다음과 같이 Curve를 만들어 줍니다.
[그림33]
[그림34]
Curve를 선택한 후 Emit from Object를 클릭하여 Emitter를 만들어 줍니다.
Play 버튼을 클릭하여 움직임을 확인해 봅니다
[그림35]
[그림36]
Curve를 통해 Particle입자들이 나오는 것을 볼 수 있습니다. 이제 Curve를 통해 입자들의 움직임을 제어해 보도록 하겠습니다. 그전에 입자들이 Curve의 어느 부분을 통해서 나오는지 알아보도록 하겠습니다.
Curve를 선택한 후 Display > NURBS Components > CVs를 실행하여 줍니다.
[그림37]
[그림38]
Curve의 CV들을 통해 Particle입자들이 나오는 것을 알 수 있습니다. CV가 많을수록 좀더 많은 입자를 만들 수 있다는 것을 알 수 있습니다. Curve를 이용하여 입자들의 움직임을 제어해 보도록 하겠습니다.
Curve의 Pivot의 위치를 아래로 바꾸어주겠습니다. 키보드의 Insert 키를 눌러 다음과 같이 Pivot의 위치를 바꾸어 줍니다.
[그림39]
Curve에 회전 값을 주어 입자들의 움직임을 보기위해 위치를 바꾸어주었습니다. Curve를 선택한 1프레임으로 가서
"S"키를 눌러 Animation 시작하여 줍니다. 50프레임으로 가서 Rotate X 값에 360을 넣어줍니다. 이렇게 값을
넣어주면 1프레임부터 50프레임까지 가는 동안 X방향으로 360도 만큼 회전하는 Animation이 만들어 지게 되는 것입니다.
만들어진 것을 Play버튼을 눌러 움직임을 확인하여 봅니다.
[그림40]
[그림41]
Curve의 CV위치에 Particle 입자들이 따라서 움직이는 것을 볼 수가 있습니다.
Emitter의 Speed값을 조절 한다면 좀더 다른 모양으로 만들 수 있습니다
[그림42]
[그림43]
[그림44]
이번에는 각각의 CV에서 방사되는 Particle의 양을 조절하여 보도록 하겠습니다. Curve를 선택한 후 Particles > Per-Point Emission Rates를 클릭하여 줍니다. 다음과 같은 옵션박스가 만들어지며 각각의 CV에서 방사되는 Particle의 양을 조절할 수 있습니다. 다음과 같이 값을 변경 후 Play버튼을 눌러 움직임을 확인 합니다.
[그림45]
1000의 값을 준 CV부분의 Particle의 방사량이 다른 곳 보다 많은 것을 볼 수 있습니다.
이렇게 Rate 값 등을 조절하여 여러 가지 모양을 만들 수 있습니다. 이것을 응용하여 다음과 같은 예제를 만들어 보겠습니다.
우선 Create > CV Curve Tool을 선택 다음과 같이 라인을 그려 줍니다.
[그림46]
그리고 Create > NURBS Primitives > Circle를 꺼내 줍니다.
여기서 우리는 선이 불에 타들어가는 애니메이션을 만들려고 합니다. 그러기 위해 Extrude 명령을 이용하게 될 것입니다. 세부적 옵션에 대해 배울 것입니다.
Circle 과 CV curve를 선택한 후 Surfaces > Extrude 옵션 박스를 열어 줍니다. Extrude의
초기 옵션을 보게 되면 Curve Range 옵션을 보게 되면 Complete로 설정 되어 있을 것입니다. 우리는 Partial
옵션을 이용하여 Curve를 열고 닫을 수 있도록 하겠습니다.
Partial옵션을 체크한 후 Apply 버튼을 눌러 줍니다.
[그림47]
다음과 같은 화면을 볼 수 있을 것입니다.
[그림48]
[그림48] 실행 전
[그림49]
이 라인에 불꽃을 달아서 타들어가는 애니메이션을 만들겠습니다. 따로 Emitter를 만들지 않고 CV Point에 직접 Emitter를 적용하도록 하겠습니다.
먼저 가장 앞쪽의 CV Point를 선택한 후 Particles > Emit from Object를 실행 합니다.
[그림49] 실행 후
[그림50]
실행을 하고 난후 CV Point를 보게 되면 Emitter가 생긴 것을 볼 수 있습니다.
이제는 Curve가 타들어 가는 애니메이션을 만들어 보겠습니다.
앞에서 Extrude명령을 사용할 때 타들어가는 애니메이션을 고려하여 옵션을 Partial로 하여 라인을 만들었습니다. 라인을 선택하여 보면 Channel Box창에 다음과 같은 명령이 생긴 것을 볼 수 있습니다.
[그림51]
이 두 가지의 옵션을 이용하여 선을 열고 닫는 애니메이션을 할 수 있습니다.
[그림52]
SubCurve2 의 Min Value를 값을 이용 하겠습니다. 수치를 조절하여 보면 라인이 점점 사라지는 것을 볼 수 있습니다.
0 프레임에서 Min Value를 선택 후 Key Selected를 주어 애니메이션을 만들어 줍니다. 100 프레임으로 이동 후 Min Value 값을 적당히 조절 후 Key Selected를 주어 애니메이션을 마무리 합니다.
PLAY버튼을 누른 후 입자들의 움직임을 확인하여 보면 다음과 같은 움직임을 보실 수 있습니다.
이번에는 Cycle Emission에 관하여 알아보겠습니다.
□ Cycle Emission
순환 emitter 는 emitter 의 무작위 수 배열을 다시 시작한다. 게임(game)에 쓰는 단순한 순환을 만들 수 있다.
프레임에 설정해 놓으면, Cycle Interval에서 설정한 수의 프레임 수 후에 배열이 다시 시작 된다. None에 설정하면,
무작위 숫자 추출기가 작동하지 않는다.
□ Cycle Interval
Cycle Emission 을 사용할 때 무작위 숫자배열을 재 시작하는 프레임 간격을 설정한다.
Cycle Emission을 이용하는 방법을 알아보도록 하겠습니다.
Particles > Cerate Emitter > Directional로 설정하여 Emitter를 만들어 줍니다. Y
방향으로 입자의 방향을 만들어 Play버튼을 눌러 확인합니다. 입자의 불규칙한 모양을 만들기 위해 Turbulence
Field를 추가하여 줍니다. 입자들이 모이게 하기 위해 New Ton Filed를 추가합니다.
입자의 LifeSpan 값을 정해주어 입자들이 사라지게 만들어 줍니다.
[그림53]
[그림54]
[그림55]
[그림56]
모양과 색상을 변경해 줍니다.
입자를 선택하여 Attributes창을 열어 Cycle Emission 옵션을 선택하여 줍니다.
[그림57]
Cycle Emission을 프레임으로 바꾸어 줍니다. 아직까지는 큰 변화가 없습니다. 입자를 선택하여 Attributes 창을 열어 Multi Radius 값을 조절하여 줍니다.
[그림58]
값을 낮춘 후 다시 Play버튼을 눌러보면 다음과 같은 입자의 모양을 볼 수 있습니다.
□ Rate값을 조절한다면 더욱 다양한 모양을 만들어 낼 수 있습니다.
[그림59]
□ Turbulence 값을 조절하여 다양한 모양을 만들 수 있습니다.
1) 'A03_flowShape.mb' 라는 파일로 새로 저장하고 시작하자.
2) 수직으로 새워져 있는 Fluid 를 선택해서 90도 회전해 수평으로 눕힌다.
노트 > 수치 설정시 플레이를 하면서 관련 파라미터를 변경하면 변화에 대한 직관적인 관찰이 가능하다.
3) 여기서는 시뮬레이션의 다섯 요소중 Density 만 시뮬레이션 처리할 것이므로 fluidShape/ Contents Method에서 Density와 Velocity만 Dynamic Grid로 설정하고, 나머지는 Off(zero)로 설정한다.
출처:3D아티산
'공부 > Maya' 카테고리의 다른 글
[maya] Maya Particle Shading Script (0) | 2011.02.21 |
---|---|
[maya] Ocean Spray (0) | 2011.01.26 |
[maya] particleSamplerInfo smoke (0) | 2011.01.21 |
[maya] Blast Code Setting (2) | 2011.01.10 |
[maya] ice cracking (0) | 2011.01.10 |
Recent comment