Utiliser des composants audio dans votre jeu DirectX

Utiliser l’audio dans votre jeu DirectX

[ Cet article est destiné aux développeurs de Windows 8.x et Windows Phone 8.x qui créent des applications Windows Runtime. Si vous développez une application pour Windows 10, voir la Documentation ]

Apprenez à développer et à incorporer de la musique et des sons dans votre jeu DirectX, et à traiter les signaux audio afin de créer des sons dynamiques et positionnels.

Pour la programmation audio, nous recommandons d’utiliser la bibliothèque XAudio2 de DirectX, et nous l’utilisons ici. XAudio2 est une bibliothèque audio de bas niveau qui procure une fondation pour le traitement et le mixage du signal pour les jeux, ainsi que la prise en charge de nombreux formats.

Vous pouvez également implémenter la lecture de sons simples et de la musique avec Microsoft Media Foundation. Microsoft Media Foundation est conçu pour la lecture de fichiers et de flux multimédias, autant audio que vidéo, mais il peut aussi être utilisé dans les jeux et est particulièrement utile dans les scènes cinématiques ou les composants non-interactifs de votre jeu.

Dans cette section

RubriqueDescription

Feuille de route de développement audio DirectX

Cette rubrique fournit la liste des ressources de développement audio pour les applications Windows Runtime en C++ avec DirectX. Elle couvre XAudio2, Media Foundation et les types de prise en charge audio XAML de Windows Runtime.

 

Aperçu rapide des concepts

Voici quelques concepts de programmation audio que nous utilisons dans cette section.

  • Le signal est à la programmation audio ce que le pixel est au graphisme : l’unité de base. Les processeurs de signal numérique (DSP, digital signal processor) qui les traitent sont comme les nuanceurs de pixels du son du jeu. Ils peuvent transformer les signaux, les combiner ou les filtrer. En programmant les DSP, vous pouvez modifier les effets audio et la musique de votre jeu avec le niveau de complexité de votre choix.
  • Les voix sont les composites sous-mixés de deux signaux, ou plus. Il existe 3 types d’objets vocaux XAudio2 : voix source, sous-mixée et de matriçage. Les voix source opèrent sur les données audio fournies par le client. Les voix source et sous-mixées envoient leur sortie vers une ou plusieurs voix sous-mixées ou de matriçage. Les voix sous-mixées et de matriçage mixent les signaux provenant de toutes les voix qui les alimentent et opèrent sur le résultat. Les voix de matriçage écrivent des données audio sur un périphérique audio.
  • La mixage est le processus consistant à combiner différentes voix discrètes, telles que les effets sonores et le son d’arrière-plan que l’on entend en fond sonore, en un seul flux. Le sous-mixage est le processus consistant à combiner différents signaux discrets, tels que les sons composant un bruit de moteur, et à créer une voix.
  • Formats audio. La musique et les effets audio peuvent être stockés dans une variété de formats numériques pour votre jeu. Il existe des formats non compressés, comme WAV, et des formats non compressés, comme MP3 et OGG. Plus un échantillon est compressé, moins la fidélité est bonne. En règle générale, plus le taux d’échantillonnage est bas, plus la perte de qualité audio est grande. La fidélité pouvant varier suivant les schémas de compression et les taux d’échantillonnage, il est recommandé d’expérimenter pour trouver ce qui fonctionne mieux pour votre jeu.
  • Taux d’échantillonnage et qualité. Les sons peuvent être échantillonnés à différents taux, et les sons échantillonnés à un faible taux offrent une fidélité moindre. Le taux d’échantillonnage de la qualité CD est de 44,1 Khz (44100 Hz). Si vous n’avez pas besoin d’une haute fidélité pour un son, vous pouvez choisir un taux d’échantillonnage inférieur. Les taux plus élevés conviennent aux applications audio professionnelles, mais vous n’en avez pas besoin tant que votre jeu n’exige pas un son à niveau de fidélité professionnel.
  • Émetteurs sonores (ou sources). Dans XAudio2, les émetteurs sonores sont des sources qui émettent un son, qu’il s’agisse d’un parasite de bruit de fond ou d’un morceau de rock joué par un jukebox dans une scène de votre jeu. Vous spécifiez les émetteurs à l’aide de coordonnées universelles.
  • Écouteurs de son. L’écouteur de son est souvent le joueur, voire une entité IA dans un jeu plus avancé, qui traite les sons reçus en provenance d’un écouteur. Vous pouvez sous-mixer ce son dans le flux audio pour le faire entendre au joueur, ou l’utiliser pour accompagner une action spécifique en cours de jeu, comme réveiller un garde IA marqué comme écouteur.

Considérations de conception

Le son est un élément extrêmement important de la conception et du développement du jeu. De nombreux joueurs sont capables de se souvenir d’un jeu médiocre élevé au rang de légende pour sa bande son, un superbe travail sur les voix ou le mixage du son, ou simplement une production audio exceptionnelle. La musique et le son définissent la personnalité d’un jeu, et établissent le motif principal qui identifie le jeu et le distingue de ses concurrents. L’effort que vous consacrez à concevoir et à développer le profil audio de votre jeu sera bien employé.

Le son 3D positionnel peut ajouter un niveau d’immersion au-delà de ce qu’apportent les graphiques 3D. Si vous développez un jeu complexe qui simule un univers, ou qui exige un style cinématographique, envisagez d’employer des techniques audio positionnelles 3D pour faciliter l’immersion du joueur.

Référence

Rubriques associées

Guide de programmation XAudio2

 

 

Afficher:
© 2016 Microsoft