menu
 

Comment jouer des sons depuis Wwise dans Unreal Engine

Outils et conseils pour Wwise

Wwise possède de nombreuses fonctionnalités ; mais en début de développement, lorsque vous ne disposez pas de suffisamment d'informations sur la manière de l'utiliser, il est possible qu'il ne fonctionne pas comme prévu. Je ne veux pas que vous ayez l'impression que Wwise soit difficile à utiliser simplement à cause d'une difficulté rencontrée au départ, alors permettez-moi de vous guider à travers un processus qui fonctionnera sans problème, tant que vous suivrez les étapes décrites ci-dessous.

Dans ce premier article, j'irai jusqu'à jouer des sons avec Unreal Engine.

Les versions que j'ai utilisées pour vérifier que ce processus fonctionne :

  • Wwise 2023.1.1.8417
  • Unreal Engine 5.3.2

Notez que si vous utilisez une autre version, il est possible que les choses fonctionnent différemment.

Table des matières

Créer un projet
Créer un projet Unreal
Effectuer l'intégration Unreal
Configuration initiale de Wwise
Configuration initiale d'Unreal
Programmer des sons dans le projet Wwise
Créer des UAssets
Jouer des sons depuis un Blueprint
Quelques considérations
Annexe - Exemple de configuration de dossier
Tout inclure dans le projet Unreal
Placer le projet Wwise en-dehors du projet Unreal
Annexe - Comment créer des UAssets
Annexe - Moyens rapides de jouer des sons
Jouer des sons en utilisant AkAmbientSound
Jouer des sons à l'aide d'un Blueprint
Jouez des sons en utilisant C++

Créer un projet

Créer un projet Unreal

1. Ouvrez Unreal Engine et sélectionnez « GAMES – Third Person ».
2. Spécifiez le nom du projet.
• Dans mon exemple, j'ai nommé le projet « ThirdPerson_Tutorial ».
3. Cliquez sur le bouton « Create » pour créer un nouveau projet.
4. Après avoir créé le projet, la vue de l'éditeur d'Unreal Engine s'ouvrira, mais gardons-la pour fermée l'instant.

01_Unreal_Create_Project

Effectuer l'intégration Unreal

1. Ouvrez l'Audiokinetic Launcher, et ouvrez l'onglet Unreal.
2. Cliquez sur le bouton « Integrate Wwise in Project... » du projet « ThirdPerson_Tutorial » que vous venez de créer.

02_Integrate_Wwise

3. Assurez-vous de sélectionner la plateforme que vous voulez intégrer.
4. Si vous ne spécifiez pas de chemin pour le projet Wwise, un projet Wwise sera automatiquement créé à l'intérieur du projet Unreal.
• Si vous avez déjà créé un projet Wwise quelque part, spécifiez-le ici pour l'utiliser.
5. Cliquez sur le bouton « Integrate ».

03_Integrate_Wwise_Menu

6. L'intégration est maintenant terminée.
7. Ensuite, afin de mettre à jour votre projet Wwise, cliquez sur « Open in Wwise – Wwise 2023.1.1.8417 ».

04_Open_in_Wwise

Configuration initiale de Wwise

1. Allez dans le menu « Project – Project Settings – SoundBanks », et cochez « Enable Auto-Defined SoundBanks ».
2. Sauvegardez le projet Wwise et relancez Unreal Engine.

05_Wwise_Initial_Settings

Configuration initiale d'Unreal

1. Ouvrez le menu « Edit – Project Settings.... »
2. Allez dans « Wwise – User Settings – WAAPI », et activez l'option « Auto Connect to WAAPI ».

06_Unreal_Initial_Settings_1

3. Allez dans le menu « Wwise – Integration Settings – Installation – Root Output Path », et spécifiez la localisation du dossier « GeneratedSoundBanks » de votre projet Wwise.
• Si vous laissez ce champ vide, il référencera le dossier « Content » et ne sera pas en mesure de jouer des sons correctement.

07_Unreal_Initial_Settings_2

4. Lorsque vous ouvrez Unreal Engine, l'outil de création Wwise affichera la fenêtre de dialogue contenant l'avertissement « External Project Changes ». Cliquez sur le bouton « Reload ».

08_Unreal_Initial_Settings_3

5. Un avertissement apparaîtra dans le Wwise Browser vous indiquant que les métadonnées des SoundBanks n'ont pas été trouvées, mais ne vous inquiétez pas, et cliquez simplement sur le bouton « Generate SoundBanks... ».

09_Unreal_Initial_Settings_4

6. Dans la boîte de dialogue « Generate SoundBanks », cliquez sur le bouton « Generate » pour générer les SoundBanks et afficher la configuration de répertoire dans le Wwise Browser.

10_Unreal_Initial_Settings_5

Programmer des sons dans votre projet Wwise

Essayons maintenant de jouer un son d'ambiance.
Nous allons utiliser un son se trouvant dans le dossier « IntegrationDemo » :
•<Wwise>\SDK\samples\IntegrationDemo\WwiseProject\Originals\SFX

1. Faites un glisser-déposer sur le fichier « waves.wav » depuis ce dossier vers la Default Work Unit de l'Actor-Mixer Hierarchy, ce qui affichera la boîte de dialogue « Audio File Importer ».

11_Register_Assets_1

2. Cliquez sur le bouton « Import », et le fichier sera enregistré en tant qu'objet Sound SFX nommé « waves ».

12_Register_Assets_2

3. Dans le Project Explorer, sélectionnez l'objet Sound SFX « waves » que vous venez de créer pour afficher des informations d'objet sur la droite.

13_Register_Assets_3

4. Dans l'onglet « General Settings », il y a un paramètre « Loop ». Activez-le.

14_Register_Assets_4

5. Faites un clic droit sur l'objet Sound SFX « waves » et créez les Events suivants depuis le menu « New Event » :
•Play_waves : Joue l'objet Sound SFX « waves »
•Stop_waves : Stoppe l'objet Sound SFX « waves »

15_Register_Assets_5

6. Une fois ces étapes terminées, sauvegardez le projet Wwise et relancez Unreal Engine.

Création des UAssets

Afin de jouer le son, vous devez créer un asset Unreal Engine, ou « UAsset ».
Il y a plusieurs manières de le faire, mais laissez-moi vous montrer la méthode utilisant la fonctionnalité « Reconcile ».

1. Tout d'abord, créez une SoundBank incluant les Events que vous venez de créer.

16_Create_UAssets_1

2. Ensuite, dans le Wwise Browser, cliquez sur le bouton « Reconcile ».

17_Create_UAssets_2

3. Vérifiez que la colonne « UAsset Operation » soit réglée sur « Create » et cliquez sur le bouton « Reconcile Unreal Assets ».

18_Create_UAssets_3

4. Les UAssets viennent d'être générés. Dans le Wwise Browser, vérifiez la colonne « Wwise UAssets Status ».

19_Create_UAssets_4

Jouer des sons depuis un Blueprint

Dans cette section, je vais vous montrer comment jouer des sons à partir d'un Blueprint.

1. Depuis le menu, sélectionnez « Open Level Blueprint ».

20_Play_by_BluePrint_1

2. Faites un clic droit sur la vue Blueprint pour créer un événement « BeginPlay ».

21_Play_by_BluePrint_2

3. Faites glisser un connecteur depuis l'événement « BeginPlay » pour créer un module « PostEvent ».

22_Play_by_BluePrint_3

4. Dans la zone « Ak Event », sélectionnez « Play_waves ».

23_Play_by_BluePrint_4

5. Compilez le Blueprint.

24_Play_by_BluePrint_5

6. Sans rien changer d'autre, cliquez sur le bouton « Play ».

25_Play_by_BluePrint_6

7. Vous devriez maintenant entendre le bruit des vagues !

26_Play_by_BluePrint_7

Quelques considérations

J'ai suivi moi-même les étapes de cet article pour m'assurer de leur bon fonctionnement. Cependant, certaines étapes ou captures d'écran peuvent être différentes avec les futures mises à jour. Si vous remarquez des comportements différents de ceux que j'ai décrits ici, veuillez m'en faire part dans la section Commentaires.
S'il y a d'autres fonctionnalités que vous aimeriez voir, veuillez également les indiquer dans les Commentaires.

Annexe - Exemple de configuration de dossier

Tout inclure dans le projet Unreal

Vous pouvez inclure le dossier « Generated SoundBanks » dans le projet Wwise, et placer l'ensemble du projet Wwise à l'intérieur du projet Unreal.

27_Wwise_in_Unreal

  • Avantage : Tout est réuni dans un seul dossier/Repository.
• Inconvénient : Les personnes n'étant pas concepteurs sonores doivent tout de même télécharger le projet Wwise (bien qu'elles n'aient pas besoin de l'outil de création Wwise).

Placer le projet Wwise en-dehors du projet Unreal

Vous pouvez placer le dossier « Generated SoundBanks » à l'intérieur du projet Unreal, et placer le projet Wwise à l'extérieur du projet Unreal.

28_Wwise_outside_Unreal

  • Avantage : Les personnes n'étant pas concepteurs sonores n'ont pas besoin de télécharger le projet Wwise.
• Inconvénient : Tout est divisé entre plusieurs dossiers/Repository.
*ASTUCE : Pour que cette configuration fonctionne dans l'éditeur Unreal, le minimum requis se résume aux fichiers localisés directement dans le dossier « Generated SoundBanks » et au dossier Windows.

Annexe - Comment créer des UAssets

A) Dans le Wwise Browser, glissez-déposez un Event dans la fenêtre de navigateur de contenu (« Content Browser »).

29_Create_UAssets_1

B) Faites un clic droit et sélectionnez « Import Selected Assets » dans le menu déroulant.
• Vous pouvez spécifier plusieurs Events ou dossiers à la fois.

30_Create_UAssets_2

C) Vous pouvez également créer des UAssets en faisant un glisser-déposer des Events depuis le Wwise Browser vers la zone de propriété de l'acteur, ou vers un composant du Blueprint ciblé.

31_Create_UAssets_3

32_Create_UAssets_4

D) Seulement dans le cas des Events, vous pouvez les glisser-déposer depuis le Wwise Browser vers la fenêtre de visualisation (« Viewport ») pour générer des UAssets en même temps que des AkComponents.

33_Create_UAssets_5

Lorsque vous effectuez les étapes C ou D, les UAssets seront générés à l'emplacement spécifié dans le menu Edit – Project Setting – Wwise – Integration Settings – Asset Creation – Default Asset Creation Path :

34_Create_UAssets_6

Annexe - Moyens rapides de jouer des sons

Jouer des sons en utilisant AkAmbientSound

1. Placer un acteur AkAmbientSound.

35_Play_by_AkAmbientSound_1

2. Définissez l'Event que vous désirez jouer dans le menu « Ak Event ».

36_Play_by_AkAmbientSound_2

3. Activez l'option « Auto Post ».

37_Play_by_AkAmbientSound_3

4. Réglez l'option « Obstruction Occlusion - Refresh Interval » sur 0.0.

38_Play_by_AkAmbientSound_4

Jouer des sons à l'aide d'un Blueprint

1. Sélectionnez le menu « Open Level Blueprint ».

39_Play_by_BluePrint_1

2. Créez un événement « BeginPlay ».

40_Play_by_BluePrint_2

3. Créez un module « Post Event » depuis l'évènement « BeginPlay ».

41_Play_by_BluePrint_3

4. Définissez l'Event que vous désirez jouer dans le champ « Ak Event » du « Post Event ».

42_Play_by_BluePrint_4

Jouer des sons en utilisant C++

Vous pouvez effectuer un Post Event en utilisant la méthode UAkAudioEvent, définie dans AkAudioEvent.h.

1. Vous pouvez effectuer un Post Event sur l'acteur, le composant ou le GameObject spécifié.

  • AkPlayingID UakAudioEvent::PostOnActor()
  • AkPlayingID UakAudioEvent::PostOnActorAndWait()
  • AkPlayingID UakAudioEvent::PostOnComponent()
  • AkPlayingID UakAudioEvent::PostOnComponentAndWait()
  • AkPlayingID UakAudioEvent::PostOnGameObject()
  • AkPlayingID UakAudioEvent::PostOnGameObjectAndWait()
  • AkPlayingID UakAudioEvent::PostOnGameObjectID()

2. Vous pouvez utiliser un GameObject fictif.

  • AkPlayingID UakAudioEvent::PostAtLocation ()
  • AkPlayingID UakAudioEvent::PostAmbient()

3. APIs that manage data loading:

  • void UakAudioEvent::LoadData()
  • void UakAudioEvent::UnloadData()
  • bool UakAudioEvent::IsDataFullyLoaded()
  • bool UakAudioEvent::IsLoaded()

Hiroshi Goda

Hiroshi Goda

Hiroshi est ingénieur senior en application de terrain et évangéliste technique chez Audiokinetic K.K. (Japon), et fournit une assistance technique aux clients qui ont implémenté Wwise dans leurs projets ou qui envisagent de le faire. Sa carrière de programmeur de jeux a commencé en 1997 avec la PlayStation et s'est poursuivie jusqu'à la PlayStation3, après quoi il a commencé à travailler dans le domaine des jeux mobiles. Hiroshi est passé à l'industrie de la cybersécurité en 2016, mais il est revenu aux jeux vidéo en 2021, lorsqu'il a pris ses fonctions actuelles. Par son expérience en outils de réduction des couleurs et en développement des normes vidéo pour PS1, il a déposé un brevet concernant le dessin par couches utilisant des films α à 3 valeurs, et il est en réalité plutôt un technicien de l'image que de l'audio.

Commentaires

Laisser une réponse

Votre adresse électronique ne sera pas publiée.

Plus d'articles

Impacter et Unreal Engine | Comment contrôler le plugiciel Impacter en utilisant la physique du moteur de jeu

Introduction Impacter est un nouveau prototype de plugiciel de modélisation de sons d'impacts pour...

10.11.2022 - Par Sean Soraghan

Nouveauté de Wwise Spatial Audio 2023.1 | Révision du modèle d'envois auxiliaires

Si vous avez parcouru la liste des nouvelles fonctionnalités de Wwise 2023.1, et en effet, il y en a...

15.12.2023 - Par Nathan Harris

Nouvelles concernant le cycle de mises à jour de Wwise | Lancement de Sim-Patchs et support de développement pour versions Preview d'Unreal Engine

Cet article a pour but de partager les changements que nous avons apportés à notre processus de...

29.5.2024 - Par Guillaume Renaud

Guide pour choisir le bon codec

En audio de jeux vidéo, nous avons toujours eu besoin de compresser les fichiers audio. Le fait est...

30.1.2025 - Par Mathieu Jean

Wwise HDR : Aperçu et conseils pour le mixage de jeux vidéo

Introduction Le HDR (High Dynamic Range) est une fonctionnalité de Wwise très efficace pour mixer et...

5.2.2025 - Par Alex May

Wwise pour les débutants : Réponses à 10 questions

L'apprentissage d'un nouveau logiciel, tout en étant passionnant et gratifiant, peut être un...

19.3.2025 - Par Mads Maretty Sønderup

Plus d'articles

Impacter et Unreal Engine | Comment contrôler le plugiciel Impacter en utilisant la physique du moteur de jeu

Introduction Impacter est un nouveau prototype de plugiciel de modélisation de sons d'impacts pour...

Nouveauté de Wwise Spatial Audio 2023.1 | Révision du modèle d'envois auxiliaires

Si vous avez parcouru la liste des nouvelles fonctionnalités de Wwise 2023.1, et en effet, il y en a...

Nouvelles concernant le cycle de mises à jour de Wwise | Lancement de Sim-Patchs et support de développement pour versions Preview d'Unreal Engine

Cet article a pour but de partager les changements que nous avons apportés à notre processus de...