audio_play_sound_ext 함수 해설
audio_play_sound_ext 함수는 게임 내에서 다양한 매개변수를 사용하여 어떤 사운드 자산도 재생할 수 있는 기능입니다. 이 함수는 전달되는 매개변수에 따라 audio_play_sound, audio_play_sound_at, 또는 audio_play_sound_on처럼 동작할 수 있습니다.
필수 및 선택적 매개변수
이 함수에 필요한 매개변수는 struct 형식으로 전달됩니다. 꼭 필요한 키는 soundkey입니다. 매개변수의 전체 목록은 다음과 같습니다:
| 키 | 설명 | 필수 여부 |
|---|---|---|
| sound | 사운드 자산 또는 오디오 큐 ID | 필수 |
| priority | 우선 순위 (실수형) | 선택적 (기본값: 0) |
| loop | 루프 여부 (부울형) | 선택적 (기본값: false) |
| gain | 음량 (실수형) | 선택적 (기본값: 1.0) |
| offset | 오프셋 (실수형) | 선택적 (기본값: 자산 수준 오프셋) |
| pitch | 피치 (실수형) | 선택적 (기본값: 1.0) |
| listener_mask | 리스너 마스크 (실수형) | 선택적 (기본값: 발신자 혹은 전역 리스너 마스크) |
| emitter | 오디오 발신자 ID | 선택적 (기본값: 정의되지 않음) |
| position | 위치 (구조체) | 선택적 (기본값: 정의되지 않음) |
| x | x 좌표 (실수형) | 선택적 |
| y | y 좌표 (실수형) | 선택적 |
| z | z 좌표 (실수형) | 선택적 |
| falloff_ref | 감쇠 참조 (실수형) | 선택적 |
| falloff_max | 최대 감쇠 (실수형) | 선택적 |
| falloff_factor | 감쇠 계수 (실수형) | 선택적 |
함수 사용법
함수 문법:
audio_play_sound_ext(params);
매개변수 설명
params: 설정하고자 하는 매개변수의 키-값 쌍을 포함하는 구조체입니다.sound키는 필수이며, 사운드 자산을 값으로 가집니다.
반환값
- 반환값: 사운드 인스턴스 ID
활용 예제
예제 1: 기본 사운드 재생
audio_play_sound_ext({ sound: snd_ambience });
위 코드는 "snd_ambience"라는 소리를 재생합니다. 사운드 인스턴스는 기본 우선순위 0을 가지며, 루프되지 않습니다. 다른 사운드 속성들은 구조체에 제공되지 않아 기본값으로 설정됩니다.
예제 2: 발신자에서 사운드 재생
var _sound_params = {
sound: snd_shot,
priority: 20,
gain: 1.2,
pitch: 2,
emitter: em_north_entrance
};
audio_play_sound_ext(_sound_params);
위 코드는 임시 구조체 _sound_params를 생성합니다. "snd_shot"이라는 소리를 우선 순위 20, 음량 1.2, 피치 2로 설정하여 기존의 발신자 em_north_entrance에서 재생합니다.
예제 3: 3D 오디오 공간에서 지정된 위치에서 사운드 재생
var _sound_params = {
sound: snd_shot,
pitch: 1.1,
position: { x: 100, y: 100, z: 20 }
};
audio_play_sound_ext(_sound_params);
위 코드는 임시 구조체 _sound_params를 생성하여 "snd_shot" 사운드를 피치 1.1로 설정하고, (100, 100, 20) 위치에서 재생합니다.
이러한 예제를 통해 audio_play_sound_ext 함수를 다양한 방식으로 활용할 수 있습니다. 필요에 따라 매개변수를 조정하여 최적의 사운드 경험을 제공할 수 있습니다.