파티클 방출기 제거 함수
part_emitter_destroy
함수는 지정된 파티클 방출기를 주어진 파티클 시스템에서 제거하고 메모리에서 지웁니다. 이 함수는 해당 방출기에서 더 이상 파티클이 생성되지 않도록 합니다. 그러나 이 방출기에 의해 생성된 기존 파티클은 파티클 시스템에서 제거되지 않습니다. 이 함수를 사용하여 방출기가 더 이상 필요하지 않을 때 호출하면 메모리 누수와 오류를 방지할 수 있습니다.
문법
part_emitter_destroy( ps, ind );
인수 설명
인수 | 유형 | 설명 |
---|---|---|
ps | Particle System Instance | 방출기를 제거할 파티클 시스템 |
ind | Particle Emitter ID | 제거할 방출기의 인덱스 |
반환값
N/A
예제
다음 코드는 p_emit
변수에 인덱스가 저장된 파티클 방출기가 주어진 파티클 시스템에 존재하는지 확인하고, 존재할 경우 이를 제거합니다.
if (part_emitter_exists(global.Sname, p_emit)) {
part_emitter_destroy(global.Sname, p_emit);
}
활용 예제
예제 1: 파티클 방출기 제거 후 새로운 방출기 생성
if (part_emitter_exists(global.Sname, p_emit)) {
part_emitter_destroy(global.Sname, p_emit);
}
var new_emitter = part_emitter_create(global.Sname);
예제 2: 모든 방출기 제거 후 파티클 시스템 초기화
for (var i = 0; i < part_emitter_count(global.Sname); i++) {
part_emitter_destroy(global.Sname, i);
}
part_system_destroy(global.Sname);
예제 3: 특정 조건에서 방출기 제거
if (score > 100) {
part_emitter_destroy(global.Sname, p_emit);
}
예제 4: 방출기 제거 후 효과 적용
if (part_emitter_exists(global.Sname, p_emit)) {
part_emitter_destroy(global.Sname, p_emit);
}
part_particles_create(global.Sname, new_emitter, x, y, 100);