Choose your operating system:
Windows
macOS
Linux
GPU 파티클의 가장 흥미로운 기능은, 그 효율성 말고도, 벡터 필드가 있습니다. 벡터 필드란 파티클의 운동에 영향을 끼치는 벡터의 균일 그리드입니다. 벡터 필드는 월드에 (Global Vector Field) 액터 형식으로 놓이며, 다른 액터처럼 트랜슬레이트 / 로테이트 / 스케일 작업도 가능합니다. 동적이라 언제고 움직일 수 있습니다. 캐스케이드에서도 (Local Vector Field) 필드를 놓을 수 있는데, 그에 연관된 이미터에만 영향력이 제한됩니다. 파티클이 벡터 필드 범위에 들어가면 그 운동이 거기에 영향을 받으며, 파티클이 범위를 벗어나면 필드의 영향력이 사그라듭니다.
벡터 필드는 기본적으로 그 안의 파티클에 포스를 전해줍니다. 벡터 필드에는 "tightness" 파라미터도 있습니다. 이 파라미터는 필드의 벡터를 파티클이 얼마나 직접적으로 따를 것인가를 제어합니다. tightness 가 1 로 설정되면 파티클은 필드의 속도를 바로 읽어오므로 필드를 그대로 따르게 됩니다.
스태틱 벡터 필드는 벡터 그리드가 절대 변하지 않는 것입니다. 이러한 필드는 Maya에서 익스포트하여 볼륨 텍스처로 임포트할 수 있습니다. 스태틱 필드는 일단 비용이 매우 저렴하며, 파티클의 운동에 재미를 더할 수 있는데, 특히 필드 자체의 운동에 애니메이션을 더하는 식입니다.
추가적으로 벡터 필드는 2D 이미지에서 재구성할 수도 있습니다. 이러한 경우 노멀맵같은 이미지를 임포트한 뒤 어느 한 볼륨을 중심으로 회전시키거나 돌출시켜서 볼륨 텍스처를 재구성하는 데 쓸 수 있습니다. 이러한 재구성 결과물 위에 스태틱 벡터 필드를 추가하면 약간의 노이즈나 임의성을 넣을 수도 있습니다. 추가적으로 아틀라스 텍스처에 개별 프레임을 보관하여 2D 이미지에 애니메이션을 줄 수도 있습니다. 그렇게 하면 오프라인에서의 유연한 시뮬레이션은 물론 실시간에서의 운동 재구성도 아주 적은 비용으로 할 수 있게 됩니다.
Global Vector Fields
이 이미지에서 씬 전체적으로 보이는 작은 강조선들은 레벨에 놓은 Global Vector Field Volume (글로벌 벡터 필드 볼륨)을 시각적으로 표시한 것입니다.
글로벌 벡터 필드 모듈을 통해 파티클 시스템에서 글로벌 벡터 필드를 사용할 수 있습니다. 글로벌 벡터 필드란 파티클 시스템에 상속되는 부분이라기 보다는, 레벨 안에 볼륨으로 놓는 벡터 필드를 말합니다.
제대로 된 활용을 위해서라면 Vector Field (벡터 필드)가 할당된 Vector Field Volume (벡터 필드 볼륨) 액터가 레벨에 반드시 존재해야 합니다.
프로퍼티 |
설명 |
---|---|
Vector Field (벡터 필드) |
|
Global Vector Field Scale |
글로벌 벡터 필드 스케일 - 글로벌 벡터 필드가 파티클의 운동에 영향을 끼치는 정도를 조절하는 실수 스케일 값입니다. 값이 1 보다 작으면 그 효과가 둔화, 크면 과장됩니다. |
Local Vector Field
Local Vector Field (로컬 벡터 필드) 모듈을 통해 벡터 필드를 파티클 시스템 내 이미터에 직접 연계시킬 수 있습니다. 벡터 필드와 파티클 시스템을 한 단위로 취급하고자 할 때 좋습니다.
프로퍼티 |
설명 |
---|---|
Vector Field (벡터 필드) |
|
Vector Field |
벡터 필드 - 콘텐츠 브라우저에서 할당된 벡터 필드를 담는 프로퍼티입니다. 원하는 벡터 필드를 선택한 다음 화살표 버튼을 클릭하면 할당됩니다. |
Relative Translation |
상대 트랜슬레이션 - 이미터 안에서 벡터 필드의 위치 오프셋이 가능합니다. 수치를 통해 로컬 벡터 필드의 트랜슬레이션을 변화시킬 수는 있지만, 미리보기 패널에서 (이미터 리스트에 Local Vector Field (로컬 벡터 필드) 모듈을 선택하면 사용할 수 있는) 위젯을 통해 하는 것이 훨씬 직관적입니다. |
Relative Rotation |
상대 로테이션 - 로컬 벡터 필드의 회전 오프셋이 가능합니다. |
Relative Scale 3D |
상대 스케일 3D - 로컬 벡터 필드의 스케일 편집이 가능합니다. 벡터 필드 생성시의 스케일을 기준으로 할 때 좋습니다. |
Intensity |
세기 - 로컬 벡터 필드의 전체적인 세기에 영향을 미칩니다. 벡터 필드 포스의 배수로 생각해 보시면 됩니다. 값이 0 이면 벡터 필드의 효과가 사실상 무효화, 1 보다 크면 과장됩니다. |
Tightness |
밀접도 - 벡터 필드가 파티클 운동을 제어하는 방식을 조절합니다. 값이 0 이면 벡터 필드가 포스와 같은 식으로 작동하여 파티클의 속도에 더하기식으로 영향을 끼치며, 1 이면 파티클 속도는 벡터 필드 그리드에 정의된 속도로 완전 대체됩니다. 그 사이값은 두 극단 사이의 전체적인 결과를 혼합합니다. |
VF Init Rotation
Vector Field Initial Rotation (벡터 필드 초기 로테이션) 모듈을 통해 벡터 필드에 로테이션 초기값을 적용할 수 있습니다. 벡터 필드의 전체적인 방향에 미세조정이 필요하거나, 파티클 시스템의 운동에 불규칙적인 느낌을 더해주고자 할 때 좋습니다. 이 모듈은 벡터 필드 로테이션의 난수화를 위해 자동으로 최대/최소 범위값을 사용합니다.
이 모듈을 사용할 때는, 미리보기 패널에 벡터 필드를 시각화시키는 것이 유용할 수 있습니다. 미리보기 패널에서 뷰 > 벡터 필드 를 선택하면 됩니다.
프로퍼티 |
설명 |
---|---|
Vector Field (벡터 필드) |
|
Min Initial Rotation |
최소 초기 로테이션 - X, Y, Z 축 상의 최소 초기 로테이션 값입니다. 이 값은 [0..1] 범위로 계산됩니다. 0.25 = 90 도, 0.5 = 180 도 식입니다. |
Max Initial Rotation |
최대 초기 로테이션 - X, Y, Z 축 상의 최대 초기 로테이션 값입니다. 이 값은 [0..1] 범위로 계산됩니다. 0.25 = 90 도, 0.5 = 180 도 식입니다. |
VF Rotation Rate
Vector Field Rotation Rate (벡터 필드 회전율)은 로컬 벡터 필드에 일정한 회전율을 주고자 할 때 쓰는 모듈입니다. 이 모듈이 지정된 벡터 필드에는 회전율 분포값이 적용됩니다. 매우 재미난 효과를 낼 수 있습니다.
이 모듈을 사용할 때는, 미리보기 패널에서 벡터 필드를 시각화시켜 보면 좋습니다. 미리보기 패널에서 뷰 > 벡터 필드를 선택하면 됩니다.
프로퍼티 |
설명 |
---|---|
Vector Field (벡터 필드) |
|
Rotation Rate |
회전율 - X, Y, Z 축 상의 회전율을 설정합니다. 이 값은 초당 회전수로 계산됩니다. 즉 값이 0.1 이면 한 바퀴 도는 데 10 초가 걸린다는 뜻입니다. |
Vector Field Scale
Vector Field Scale (벡터 필드 스케일)은 벡터 필드의 영향력 규모를 조절할 수 있는 모듈입니다. 파티클 생성 순간에만 계산됩니다.
이 모듈을 사용할 때는, 미리보기 패널에서 벡터 필드를 시각화시켜 보면 좋습니다. 미리보기 패널에서 뷰 > 벡터 필드를 선택하면 됩니다.
프로퍼티 |
설명 |
---|---|
Vector Field (벡터 필드) |
|
Vector Field Scale |
벡터 필드 스케일 - 벡터 필드의 영향력에 대한 배수처럼 작동하는 실수 분포값입니다. |
VF Scale/Life
Vector Field Scale Over Life (수명에 걸친 벡터 필드 스케일)은 이미터의 수명에 걸쳐 로컬 벡터 필드의 규모를 조절할 수 있는 모듈입니다. 파티클의 수명 전반에 걸쳐 계산됩니다.
이 모듈을 사용할 때는, 미리보기 패널에서 벡터 필드를 시각화시켜 보면 좋습니다. 미리보기 패널에서 뷰 > 벡터 필드를 선택하면 됩니다.
프로퍼티 |
설명 |
---|---|
Vector Field (벡터 필드) |
|
Vector Field Scale Over Life |
수명에 걸친 벡터 필드 스케일 - 벡터 필드의 영향력에 대한 배수처럼 작동하는 실수 분포값입니다. 커브를 적용하면 파티클의 수명에 걸쳐 스케일을 조절할 수 있습니다. |