Procédure : utiliser des voix prémixées
Cette rubrique vous montre comment définir des groupes de voix pour envoyer leur sortie à la même voix submixée. Cela permet une modification unique d’une voix submixée pour affecter un groupe entier de voix.
Créez une voix submixée à laquelle toutes les voix d’effet sonore du jeu seront envoyées.
IXAudio2SubmixVoice * pSFXSubmixVoice; pXAudio2->CreateSubmixVoice(&pSFXSubmixVoice,1,44100,0,0,0,0);
Créez une structure XAUDIO2_VOICE_SENDS qui contient une référence à la voix submixée.
XAUDIO2_SEND_DESCRIPTOR SFXSend = {0, pSFXSubmixVoice}; XAUDIO2_VOICE_SENDS SFXSendList = {1, &SFXSend};
Transmettez la structure XAUDIO2_VOICE_SENDS aux nouvelles voix sources au fur et à mesure qu’elles sont créées.
IXAudio2SourceVoice* pSFXSourceVoice; if( FAILED(hr = pXaudio2->CreateSourceVoice( &pSFXSourceVoice, (WAVEFORMATEX*)&wfx, 0, XAUDIO2_DEFAULT_FREQ_RATIO, pCallback, pSFXSendList, NULL ) ) ) return hr;
Appliquez des modifications à toutes les voix d’effet sonore en ajustant la voix submixée.
Dans cet exemple, la modification du volume de la voix submixée avec la fonction SetVolume modifie efficacement le volume de toutes les voix qui y sont générées.
pSFXSubmixVoice->SetVolume(0.1);
Rubriques connexes
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour