Lire, mettre en pause, arrêter et mettre en boucle de la musique de fond
Environnement de vérification
- Windows
-
- Fenêtres 11
- Éditeur Unity
-
- 2021.3.3f1
- Package système d’entrée
-
- 1.3.0
Conditions préalables à cette astuce
Les paramètres suivants ont été définis à l’avance comme prémisse pour la description de cette astuce.
À propos du matériel inclus avec l’échantillon
BGM est emprunté au site suivant.
À propos des fichiers audio
Les formats de fichiers audio suivants peuvent être lus avec les fonctionnalités standard de Unity : Veuillez le préparer à l’avance car il sera utilisé dans ces conseils.
- OggVorbis (.ogg)
- Couche MPEG 3 (.mp3)
Pour plus d’informations, consultez la documentation officielle de Unity.
À propos de la lecture BGM
Il existe plusieurs façons de jouer de la musique de fond, mais nous voulons expliquer ici comment la jouer de manière simple tout en utilisant les fonctionnalités standard.
Le contenu consiste à organiser un bouton et à jouer, mettre en pause et arrêter en cliquant sur le bouton. Dans un jeu réel, vous pouvez implémenter le même processus autre que les boutons.
Tout d’abord, placez un bouton pour lire BGM comme indiqué dans la figure.
Ajoutez le fichier audio préparé en le déposant dans votre projet.
Ensuite, ajoutez « Source audio » à la hiérarchie.
Lorsque vous sélectionnez la source audio que vous avez créée, le composant Source audio possède un clip audio, dans lequel vous déposez un fichier audio de votre projet pour le configurer.
Soit dit en passant, si vous démarrez le jeu tel quel, le BGM que vous définissez jouera soudainement. C’est parce que « Jouer au début du jeu » est coché. Si vous voulez le jouer immédiatement au début de la scène, il n’y a pas de problème en l’état, mais cette fois, il ne sera pas lu immédiatement, alors laissez cette vérification décochée.
Ensuite, créez un script. MusicPlayer
Conservez le nom .
Le script ressemble à ceci :
using UnityEngine;
public class MusicPlayer : MonoBehaviour
{
[SerializeField] private AudioSource AudioSource;
public void OnClickPlay()
{
// オーディオを再生します
AudioSource.Play();
}
public void OnClickPause()
{
// オーディオを一時停止します
AudioSource.Pause();
}
public void OnClickStop()
{
// オーディオを停止します
AudioSource.Stop();
}
}
AudioSource
sera défini ultérieurement à partir de l’éditeur. Cette source audio est celle avec le fichier audio que vous venez d’insérer.
AudioSource
, et méthodes, de sorte que vous pouvez jouer, mettre en pause et Play
Pause
Stop
arrêter respectivement.
Vous pouvez attacher le script à la source audio, mais dans ce cas, vous l’attacherez à l’EventSystem. Assurez-vous que votre script est rempli avec la source audio que vous avez créée précédemment.
Attribuez maintenant chaque méthode à l’événement click des trois boutons.
Après la configuration, lancez le jeu et voyez si la musique de fond joue.
Play, pause et stop sont des termes couramment utilisés, vous n’avez donc pas besoin de les écrire en détail, mais je pense qu’ils fonctionnent comme suit.
- Lorsque vous cliquez sur le bouton de lecture, la musique de fond n’est lue qu’une seule fois et jouée jusqu’à la fin.
- Pendant la lecture, cliquez sur le bouton pause pour arrêter la lecture du son
- Lorsque vous cliquez sur le bouton de lecture en pause, le son est lu à partir de la position arrêtée.
- Cliquez sur le bouton d’arrêt pendant la lecture pour arrêter la lecture du son
- Cliquez sur le bouton de lecture lorsque vous êtes arrêté pour jouer depuis le début
- Cliquer sur le bouton d’arrêt pendant la pause relâchera la position en pause et la prochaine fois que vous jouerez, ce sera depuis le début.
- Si vous cliquez sur le bouton de lecture pendant la lecture, le son en cours de lecture est arrêté et lu depuis le début.
Lecture en boucle
Il lit la musique de fond par défaut et s’arrête automatiquement lorsqu’elle est jouée jusqu’à la fin. Si vous souhaitez mettre en boucle la musique de fond et continuer à jouer, cochez « Boucle » dans le composant Source audio et la lecture continuera à plusieurs reprises jusqu’à ce que vous appuyiez sur le bouton d’arrêt.
Le contenu de la lecture de l’effet sonore est le même
Si vous avez déjà vu les conseils du côté des effets sonores, vous avez peut-être remarqué que l’effet sonore et la musique de fond peuvent être joués avec les mêmes paramètres. Selon le cadre du jeu, le traitement des effets sonores et de la musique de fond peut être séparé, mais Unity vous permet de jouer aux deux avec le même traitement.
À propos du phénomène selon lequel la musique de fond s’interrompt lorsque la fenêtre est désactivée
Par défaut, lorsque d’autres fenêtres sont actives et que l’écran de jeu est désactivé, le jeu lui-même est mis en pause. Parallèlement à cela, la lecture de la musique de fond est également suspendue.
Pour éviter cela, vous pouvez le configurer pour qu’il s’exécute en arrière-plan dans les paramètres de votre projet afin que la musique de fond ne soit pas interrompue.