오디오 일시 정지 동기 그룹
이 문서는 audio_pause_sync_group 함수에 대해 설명합니다. 이 함수는 주어진 동기 그룹이 재생 중일 때 일시 정지합니다. 그룹 인덱스는 audio_create_sync_group() 함수를 사용할 때 반환된 값입니다. 이 함수는 소리를 멈추지 않으며, 나중에 audio_resume_sync_group()을 호출하면 일시 정지한 위치에서 다시 재생이 시작됩니다.
문법
audio_pause_sync_group(group_index);
인수
| 인수 | 유형 | 설명 |
|---|---|---|
| group_index | Audio Sync Group ID | 일시 정지할 그룹 인덱스 |
반환값
- N/A
예제
아래 코드는 "P" 키가 눌렸는지 확인하고, 눌렸다면 global.Pause 변수를 전환합니다. 그런 다음 global.Pause 값을 확인하여 변수 "sg"에 인덱스된 동기 그룹을 일시 정지하거나 재개합니다.
if (keyboard_check_pressed((ord)"P")) {
global.Pause = !global.Pause;
if (global.Pause) {
audio_pause_sync_group(sg);
} else {
audio_resume_sync_group(sg);
}
}
활용 및 응용 예제
1. 여러 소리 그룹 관리하기
여러 개의 사운드 그룹을 관리하려면 그룹 인덱스를 배열로 저장할 수 있습니다.
var sound_groups = [sg1, sg2, sg3];
if (keyboard_check_pressed((ord)"P")) {
for (var i = 0; i < array_length(sound_groups); i++) {
global.Pause = !global.Pause;
if (global.Pause) {
audio_pause_sync_group(sound_groups[i]);
} else {
audio_resume_sync_group(sound_groups[i]);
}
}
}
2. 상태에 따라 소리 조정하기
게임의 특정 상태(예: 메인 메뉴에서 게임 중)에서 동기 그룹의 소리를 제어할 수 있습니다.
if (game_state == "menu") {
audio_pause_sync_group(sg);
} else if (game_state == "playing") {
audio_resume_sync_group(sg);
}
3. 일시 정지 시 모든 소리 일시 정지하기
게임이 일시 정지할 때 모든 사운드를 멈추고, 다시 시작할 수 있습니다.
if (game_paused) {
for (var i = 0; i < array_length(sound_groups); i++) {
audio_pause_sync_group(sound_groups[i]);
}
} else {
for (var i = 0; i < array_length(sound_groups); i++) {
audio_resume_sync_group(sound_groups[i]);
}
}
이 문서는 오디오 동기화 관리와 관련된 기능을 제어하는 방법을 심플하게 설명합니다. 필요한 경우, 각 함수의 사용법을 더 깊이 연구해 볼 수 있습니다.