使用方法:使用次混音聲音
本主題說明如何設定語音群組,以將其輸出傳送至相同的副混音。 這可讓子混音的單一變更影響整個語音群組。
建立所有遊戲音效聲音將傳送的 副混 音。
IXAudio2SubmixVoice * pSFXSubmixVoice; pXAudio2->CreateSubmixVoice(&pSFXSubmixVoice,1,44100,0,0,0,0);
建立包含副混音參考 的XAUDIO2_VOICE_SENDS 結構。
XAUDIO2_SEND_DESCRIPTOR SFXSend = {0, pSFXSubmixVoice}; XAUDIO2_VOICE_SENDS SFXSendList = {1, &SFXSend};
在建立 XAUDIO2_VOICE_SENDS 結構時,將結構傳遞至新的來源語音。
IXAudio2SourceVoice* pSFXSourceVoice; if( FAILED(hr = pXaudio2->CreateSourceVoice( &pSFXSourceVoice, (WAVEFORMATEX*)&wfx, 0, XAUDIO2_DEFAULT_FREQ_RATIO, pCallback, pSFXSendList, NULL ) ) ) return hr;
藉由調整副混音,將變更套用至所有音效聲音。
在此範例中,使用 SetVolume 函式變更副混音的音量,實際上會變更輸出至它的所有語音音量。
pSFXSubmixVoice->SetVolume(0.1);
相關主題