파티클 속성 조정
파티클의 수명·색상·크기·속도를 직접 조정하고 각 값의 변화가 밀도·형태·이동 결과에 미치는 영향을 확인합니다.
앞 절에서 만든 생성 효과를 기준으로, 이번에는 파티클 속성을 하나씩 바꾸어 결과를 비교합니다.
나이아가라의 핵심 재미는 파티클 움직임과 형태를 원하는 방향으로 제어하는 데 있습니다.
이번 절에서는 기본 속성값을 바꿔 보며 시스템 반응을 직접 확인합니다.
파티클 속성 조정의 중요성
파티클 시스템에서 속성은 파티클 하나하나가 가지고 있는 특징들을 의미합니다.
예를 들어, 수명(Lifetime), 색상(Color), 크기(Size), 속도(Velocity) 등이 모두 파티클의 속성입니다.
이러한 속성들을 적절히 조정함으로써 여러분은 파티클 효과의 시각적인 품질과 동적인 흐름을 제어할 수 있습니다.
마치 요리사가 재료의 양념을 조절하여 맛을 내는 것과 같습니다.
나이아가라에서는 주로 디테일(Details) 패널에서 이러한 속성들을 조정하게 됩니다.
개요(Overview) 패널에서 특정 모듈을 선택하면, 해당 모듈이 제어하는 파티클 속성들이 디테일 패널에 나타나고, 여기서 값을 변경할 수 있습니다.
직접 해보기: 파티클 속성 조정 연습
이전 절에서 만들었던 NS_BasicSpawn 나이아가라 시스템을 다시 열어봅시다.
없다면 앞의 생성 실습을 따라 만듭니다. Emitter Update의 Emitter State·Spawn Rate, Particle Spawn의 Initialize Particle, Particle Update의 Particle State와 Sprite Renderer를 확인합니다. Spawn Rate는 50, 고정 수명은 1초를 기준으로 시작합니다.
파티클 수명(Lifetime) 조정하기
파티클의 수명은 얼마나 오랫동안 파티클이 화면에 남아 있을지를 결정합니다.
개요 패널에서 Initialize Particle 모듈을 선택합니다.
디테일 패널을 보면 Lifetime 속성이 보일 겁니다.
앞 실습의 기준값 1.0(1초)인지 확인합니다.
Lifetime 값을 3.0으로 변경해 보세요.
뷰포트에서 파티클들이 훨씬 더 오랫동안 존재하다가 사라지는 것을 확인할 수 있습니다.
이번에는 Lifetime 옆에 있는 화살표 아이콘을 클릭하여 Random Range Float를 선택합니다.
그러면 Minimum과 Maximum 값을 설정할 수 있게 됩니다.
Minimum을 0.5, Maximum을 2.0으로 설정해 보세요.
이제 파티클들이 각기 다른 수명을 가지고 생성되어 무작위적으로 사라지는 것을 볼 수 있습니다.
이는 효과를 더욱 자연스럽고 덜 반복적으로 보이게 합니다.
파티클 색상(Color) 조정하기
파티클의 색상은 시각 효과의 분위기를 결정하는 중요한 요소입니다.
개요 패널에서 Initialize Particle 모듈을 선택한 상태에서 Color 속성을 찾습니다.
Color 옆의 색상 상자를 클릭하면 색상 선택기(Color Picker)가 나타납니다.
원하는 색상을 선택해 보세요.
예를 들어 붉은색이나 푸른색을 선택하고 시뮬레이션을 재시작해 새 입자의 색을 확인합니다. 머티리얼이 Particle Color를 읽어야 합니다.
Alpha 값을 조절하여 파티클의 투명도를 변경할 수도 있습니다.
머티리얼이 해당 알파를 Opacity에 사용하고 적절한 블렌드 모드일 때 반투명도가 달라집니다. Opaque 머티리얼에서는 같은 결과가 나오지 않습니다.
파티클 크기(Size) 조정하기
파티클의 크기는 효과의 스케일감과 세밀함에 영향을 줍니다.
개요 패널에서 Initialize Particle 모듈을 선택한 상태에서 Sprite Size 속성을 찾습니다.
Sprite Size의 X와 Y 값을 변경해 보세요.
예를 들어 10.0으로 줄이면 파티클이 매우 작아지고, 100.0으로 늘리면 매우 커집니다.
균일 크기 모드라면 Float 범위, X·Y를 따로 지정하는 모드라면 Vector2 범위처럼 입력 자료형에 맞는 무작위 설정을 사용합니다.
예를 들어 Minimum을 20.0, Maximum을 80.0으로 설정합니다.
파티클 속도(Velocity) 부여하기
파티클에 속도를 부여하면 움직임을 만들어낼 수 있습니다.
Selection 스택의 Particle Spawn 그룹에서 + 버튼을 클릭합니다.
Add Velocity 모듈을 검색하여 초기화 모듈 다음에 추가합니다. Particle Update에는 Solve Forces and Velocity가 있어야 속도가 위치 변화로 반영됩니다. 이미 있다면 중복 추가하지 않습니다.
디테일 패널에서 Add Velocity 모듈을 선택한 후 Velocity 속성의 X, Y, Z 값을 변경해 보세요.
- 예를 들어
Z를100.0으로 설정하면 선택한 속도 좌표 공간의 +Z 방향으로 초당 100 cm를 이동하는 초기 속도를 줍니다. 다른 힘이나 좌표 변환이 있으면 월드에서의 궤적은 달라집니다. X나Y값에 양수나 음수 값을 주어 다양한 방향으로 움직이게 할 수 있습니다.
Random Range Vector를 사용하여 속도에도 무작위성을 부여할 수 있습니다.
예를 들어, Minimum을 X(-50), Y(-50), Z(50), Maximum을 X(50), Y(50), Z(150)으로 설정하면 다양한 방향과 속도로 파티클이 흩날리는 효과를 볼 수 있습니다.
변경 전후 비교
Spawn Rate 50을 유지하고 무작위 수명을 0.5~2초, 균일 크기 범위를 20~80, 속도 범위를 위의 값으로 설정했다면, 입자마다 수명·크기·이동 방향이 달라집니다. 색상은 색상 선택기에서 고른 고정값이며 이 실습에서 무작위 색을 설정한 것은 아닙니다.
- 수명을 늘렸을 때 살아 있는 입자 수와 궤적 길이가 함께 달라지는지 확인합니다.
- 색·알파는 머티리얼 연결을, 크기는 화면 겹침과 오버드로우를 함께 확인합니다.
- 속도를 바꿔도 정지해 있다면 Particle Update의 위치 적분과 이후 위치 덮어쓰기를 확인합니다.
- 기준 상태를 저장하고 값 하나를 바꾼 뒤 같은 시간 구간에서 비교합니다. 어떤 변경이 원인인지 알 수 없다면 마지막 변경부터 되돌립니다.
고정값으로 방향을 확인한 뒤 무작위 범위를 추가하면 어떤 입력이 결과를 바꿨는지 구분하기 쉽습니다.
예시: 속도의 단위부터 확인하기
비교용 입자의 시작 위치는 월드 Z=0cm로, 초기 속도는 월드 +Z 방향의 100 cm/s로, 고정 수명은 2초로 둡니다. 힘·충돌·감쇠·좌표 변환·위치 덮어쓰기는 없고 위치 적분이 정상 동작한다고 가정합니다. 1초 뒤에는 100cm/s × 1s = 100cm, 1.5초 뒤에는 100 × 1.5 = 150cm 이동합니다. Spawn Rate는 새 입자의 수를 바꾸며, 이미 태어난 이 입자의 이동 속도 100 cm/s를 바꾸지는 않습니다. 실습에서는 먼저 고정 속도와 수명으로 방향을 확인한 뒤 원래의 무작위 입력으로 돌아갑니다.
직접 예측하기
같은 시작 위치에서 속도만 월드 -Z로 50 cm/s, 고정 수명은 1초로 바꾸었습니다. 0.5초 뒤 월드 Z는 얼마일까요? 수명 종료 시 소멸한다면 2초 뒤에도 이 입자를 따라가며 Z를 읽을 수 있을까요?
풀이 확인
0.5초 뒤에는 0 + (-50) × 0.5 = -25cm입니다. 1초 수명 종료 뒤에는 입자가 소멸하므로 2초 뒤의 살아 있는 입자 위치로 -100 cm를 읽을 수 없습니다. 운동식을 시간 2초까지 연장하는 것과 실제 생존 범위는 다릅니다. 조기 소멸·컬링·다른 힘을 추가하면 원 조건부터 다시 확인합니다.