파티클 방출기 영역 설정
이 문서는 현재 방 안에서 파티클 방출기의 위치를 설정하는 함수에 대해 설명합니다. 이 함수는 특정 영역의 경계 상자를 지정하고, 그 안에서 방출기 모양과 파티클 분포를 정의하는 여러 상수를 사용할 수 있습니다.
파티클 방출기 모양 상수
상수 | 설명 |
---|---|
ps_shape_rectangle | 주어진 영역을 채우는 직사각형 모양입니다. |
ps_shape_ellipse | 주어진 영역의 너비와 높이에 의해 정의된 타원입니다. |
ps_shape_diamond | 너비와 높이의 절반에 점이 있는 다이아몬드 모양입니다. |
ps_shape_line | 시작점이 왼쪽 상단, 끝점이 오른쪽 하단인 단일 선입니다. |
파티클 분포 곡선 상수
상수 | 설명 |
---|---|
ps_distr_linear | 모든 파티클이 영역 내에서 고르게 나타날 확률을 가진 선형 분포입니다. |
ps_distr_gaussian | 중앙에서 더 많은 파티클이 생성되는 가우시안 분포입니다. |
ps_distr_invgaussian | 중앙보다 가장자리에 더 많은 파티클이 생성되는 역 가우시안 분포입니다. |
사용 방법
방출기가 인스턴스와 함께 이동해야 하는 경우, 이 함수를 스텝 이벤트에서 사용하여 방출기 위치를 업데이트해야 합니다. 특정 영역이나 분포 없이 포인트 방출이 필요한 경우, part_particles_create
함수를 사용하는 것이 더 간편할 수 있습니다.
함수 구문
part_emitter_region(ps, ind, xmin, xmax, ymin, ymax, shape, distribution);
인수 설명
인수 | 유형 | 설명 |
---|---|---|
ps | Particle System ID | 방출기가 있는 파티클 시스템입니다. |
ind | Particle Emitter ID | 설정할 방출기의 인덱스입니다. |
xmin | Real | 영역의 왼쪽 x 좌표입니다. |
xmax | Real | 영역의 오른쪽 x 좌표입니다. |
ymin | Real | 영역의 위쪽 y 좌표입니다. |
ymax | Real | 영역의 아래쪽 y 좌표입니다. |
shape | Particle Emitter Shape Constant | 영역의 모양입니다. |
distribution | Particle Emitter Distribution Constant | 파티클의 분포 스타일입니다. |
예제
part_emitter_region(global.Sname, emit_1, x - 50, x + 50, y - 50, y + 50, ps_shape_ellipse, ps_distr_linear);
위 코드는 현재 인스턴스의 (x, y) 위치를 중심으로 100px 높이와 100px 너비의 타원형 방출기를 설정합니다.
활용 예제
- 직사각형 방출기 설정
part_emitter_region(global.Sname, emit_2, x - 100, x + 100, y - 50, y + 50, ps_shape_rectangle, ps_distr_gaussian);
- 다이아몬드 모양 방출기
part_emitter_region(global.Sname, emit_3, x - 75, x + 75, y - 75, y + 75, ps_shape_diamond, ps_distr_invgaussian);
- 선형 분포의 선 방출기
part_emitter_region(global.Sname, emit_4, x - 50, x + 50, y, y, ps_shape_line, ps_distr_linear);
- 타원형 방출기와 역 가우시안 분포
part_emitter_region(global.Sname, emit_5, x - 50, x + 50, y - 100, y + 100, ps_shape_ellipse, ps_distr_invgaussian);