audio_bus_get_emitters 함수 설명 및 활용 예제
audio_bus_get_emitters 함수는 지정된 오디오 버스에 연결된 오디오 발신기(Audio Emitters)의 배열을 반환하는 기능을 제공합니다. 오디오 발신기와 연결된 오디오 버스를 얻으려면 audio_emitter_get_bus 함수를 사용합니다.
문법
audio_bus_get_emitters(bus);
매개변수
| 인자 | 타입 | 설명 |
|---|---|---|
| bus | AudioBus Struct | 연결된 발신기를 가져올 오디오 버스입니다. |
반환값
| 반환값 | 타입 | 설명 |
|---|---|---|
| Array | Array | 연결된 오디오 발신기 ID의 배열을 반환합니다. |
사용 예제
다음은 audio_bus_get_emitters 함수를 사용하는 간단한 예제입니다.
// bus_fx라는 오디오 버스에서 연결된 발신기를 가져오기
var _emitters = audio_bus_get_emitters(bus_fx);
위 코드는 bus_fx라는 오디오 버스에 연결된 발신기들을 가져와서 _emitters라는 임시 변수에 저장합니다.
활용 및 응용 예제
1. 연결된 발신기 수 계산하기
연결된 발신기의 수를 계산할 수 있습니다.
// 연결된 오디오 발신기의 수를 계산하기
var _emitters = audio_bus_get_emitters(bus_fx);
var _count = array_length(_emitters);
show_message("연결된 발신기 수: " + string(_count));
2. 각 발신기의 속성 출력하기
연결된 발신기의 ID를 출력하여 각각의 속성을 확인할 수 있습니다.
// 연결된 발신기 정보 출력하기
var _emitters = audio_bus_get_emitters(bus_fx);
for (var i = 0; i < array_length(_emitters); i++) {
var emitter_id = _emitters[i];
var emitter_name = audio_emitter_get_name(emitter_id);
show_message("발신기 ID: " + string(emitter_id) + ", 이름: " + emitter_name);
}
3. 발신기의 특정 동작 수행하기
연결된 발신기들에 대하여 특정 작업을 수행할 수 있습니다. 예를 들어, 모든 발신기의 볼륨을 줄이는 코드를 작성할 수 있습니다.
// 연결된 모든 발신기의 볼륨을 줄이기
var _emitters = audio_bus_get_emitters(bus_fx);
for (var i = 0; i < array_length(_emitters); i++) {
var emitter_id = _emitters[i];
var current_volume = audio_emitter_get_gain(emitter_id);
audio_emitter_set_gain(emitter_id, current_volume * 0.5); // 볼륨을 반으로 줄임
}
결론
audio_bus_get_emitters 함수는 오디오 시스템을 구축할 때 매우 유용한 함수입니다. 오디오 버스에 관련된 발신기들을 쉽게 가져오고, 그들을 기반으로 다양한 작업을 수행할 수 있습니다. 위의 예제를 통해 함수의 사용법과 응용 가능성을 높일 수 있습니다.