Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Sons pour le Jeu | Améliorer le Jeu
Jeu de Combat dans Unity
course content

Contenu du cours

Jeu de Combat dans Unity

Jeu de Combat dans Unity

1. Système d'Animation Unity
2. Comportement du Joueur
3. Comportement de l'Ennemi
4. Améliorer le Jeu
5. Améliorer le Jeu Flappy Bird

book
Sons pour le Jeu

Auditeur Audio

L’Audio Listener est un composant dans Unity qui agit comme les oreilles du jeu. Généralement attaché à la caméra principale ou au personnage du joueur, il capte tous les sons de la scène. Il ne doit y avoir qu’un seul Audio Listener par scène.

Fonction : Il écoute toutes les sources audio et détermine ce que le joueur entend, capturant l’audio spatial 3D, permettant ainsi au joueur de percevoir la direction et la distance des sons.

Musique de fond avec Audio Source

Le composant Audio Source est utilisé pour lire des clips audio dans Unity. Il peut être attaché à n'importe quel GameObject, tel qu'un objet dédié à la musique de fond ou des objets dans la scène émettant des effets sonores.

Fonction : Le Audio Source lit des clips audio et peut être contrôlé et configuré à l'aide de divers paramètres.

Principaux paramètres du composant Audio Source

AudioClip : Le fichier audio à lire par ce Audio Source.

Output : Le Audio Mixer Group par lequel cette source audio va acheminer son audio. Si aucun n'est spécifié, la sortie audio par défaut est utilisée.

Mute : Lorsque cette option est cochée, la source audio est muette et n'émet aucun son.

Bypass Effects : Ignore tous les effets appliqués à cette source audio, ce qui signifie qu'elle sera lue sans aucun effet audio appliqué.

Bypass Listener Effects : Ignore les effets appliqués au Audio Listener.

Bypass Reverb Zones : Empêche la source audio d'être affectée par les zones de réverbération dans la scène.

Play On Awake : Lorsque cette option est cochée, la source audio commence à lire le clip audio assigné dès le début de la scène.

Loop : Lorsque cette option est cochée, la source audio boucle le clip audio, le rejouant en continu jusqu'à l'arrêt.

Priority : Détermine la priorité de la source audio. Des valeurs plus basses signifient une priorité plus élevée, ce qui est utile lorsque de nombreuses sources audio jouent simultanément.

Volume : Contrôle le volume de la source audio. Exemple : 0.263 signifie que l'audio sera lu à environ 26 % de son volume d'origine.

Pitch : Ajuste la hauteur du clip audio. La valeur par défaut est 1. Des valeurs plus basses ralentissent et abaissent le son, tandis que des valeurs plus élevées accélèrent et augmentent la hauteur.

Stereo Pan : Contrôle la panoramique stéréo de l'audio. Une valeur de -1 place l'audio complètement à gauche, 1 complètement à droite, et 0 le centre.

Spatial Blend : Détermine le mélange entre l'audio 2D et 3D. Une valeur de 0 rend le son entièrement 2D (non affecté par la position de l'auditeur), tandis que 1 le rend entièrement 3D (affecté par la position de l'auditeur).

Reverb Zone Mix : Ajuste la quantité de la source audio qui est mélangée dans les zones de réverbération de la scène. La valeur par défaut est 1.

Résumé

Audio Listener : Capture tout l'audio de la scène et est généralement attaché à la caméra principale ;

Audio Source : Lit des clips audio et peut être configuré avec divers paramètres pour contrôler la façon dont l'audio est lu et entendu ;

Principaux paramètres : Incluent AudioClip, Output, Mute, Bypass Effects, Play On Awake, Loop, Priority, Volume, Pitch, Stereo Pan, Spatial Blend et Reverb Zone Mix.

Ces composants fonctionnent ensemble pour gérer et contrôler l'expérience audio dans Unity, offrant des environnements sonores immersifs et dynamiques pour les jeux.

Lecture du son d'attaque

private void Update()
{
    if (isAttacking)
    {
        RaycastHit2D rayCastHit = Physics2D.Raycast(transform.position, Vector2.right * transform.localScale.x, range, enemyLayer);
        if (rayCastHit)
        {
            if(rayCastHit.transform.TryGetComponent(out IGetAttacked getAttacked))
            {
                // Play attack sound
                attackAudioSource.Play();
                
                // Apply damage to the enemy
                getAttacked.GetAttacked(damage);
                
                // Play attack effect
                attackEffect.transform.position = rayCastHit.point;
                attackEffect.Play();
                
                // Stop attacking
                isAttacking = false;
            }
        }    
    }
}

Explication de l'utilisation de l'AudioSource

Détection par Raycast : Un raycast est utilisé pour détecter si l’attaque du joueur touche un ennemi. Le raycast est lancé depuis la position du joueur dans la direction vers laquelle il fait face, avec une portée définie par attackRange.

Vérification de la collision : Si le raycast touche un objet dans le enemyLayer, le script vérifie si l’objet touché implémente l’interface IGetAttacked.

Lecture du son d'attaque : Lorsqu’un impact est détecté et que l’ennemi peut être attaqué (interface IGetAttacked implémentée), le son d’attaque est joué : attackAudioSource.Play().

Résumé

Dans la classe PlayerAttack, AudioSource joue un effet sonore lorsque le joueur attaque avec succès un ennemi, déclenché par attackAudioSource.Play() dans la méthode Update après un impact détecté par raycast. Cela fournit un retour auditif immédiat, renforçant l’immersion dans le jeu.

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 4. Chapitre 5

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

course content

Contenu du cours

Jeu de Combat dans Unity

Jeu de Combat dans Unity

1. Système d'Animation Unity
2. Comportement du Joueur
3. Comportement de l'Ennemi
4. Améliorer le Jeu
5. Améliorer le Jeu Flappy Bird

book
Sons pour le Jeu

Auditeur Audio

L’Audio Listener est un composant dans Unity qui agit comme les oreilles du jeu. Généralement attaché à la caméra principale ou au personnage du joueur, il capte tous les sons de la scène. Il ne doit y avoir qu’un seul Audio Listener par scène.

Fonction : Il écoute toutes les sources audio et détermine ce que le joueur entend, capturant l’audio spatial 3D, permettant ainsi au joueur de percevoir la direction et la distance des sons.

Musique de fond avec Audio Source

Le composant Audio Source est utilisé pour lire des clips audio dans Unity. Il peut être attaché à n'importe quel GameObject, tel qu'un objet dédié à la musique de fond ou des objets dans la scène émettant des effets sonores.

Fonction : Le Audio Source lit des clips audio et peut être contrôlé et configuré à l'aide de divers paramètres.

Principaux paramètres du composant Audio Source

AudioClip : Le fichier audio à lire par ce Audio Source.

Output : Le Audio Mixer Group par lequel cette source audio va acheminer son audio. Si aucun n'est spécifié, la sortie audio par défaut est utilisée.

Mute : Lorsque cette option est cochée, la source audio est muette et n'émet aucun son.

Bypass Effects : Ignore tous les effets appliqués à cette source audio, ce qui signifie qu'elle sera lue sans aucun effet audio appliqué.

Bypass Listener Effects : Ignore les effets appliqués au Audio Listener.

Bypass Reverb Zones : Empêche la source audio d'être affectée par les zones de réverbération dans la scène.

Play On Awake : Lorsque cette option est cochée, la source audio commence à lire le clip audio assigné dès le début de la scène.

Loop : Lorsque cette option est cochée, la source audio boucle le clip audio, le rejouant en continu jusqu'à l'arrêt.

Priority : Détermine la priorité de la source audio. Des valeurs plus basses signifient une priorité plus élevée, ce qui est utile lorsque de nombreuses sources audio jouent simultanément.

Volume : Contrôle le volume de la source audio. Exemple : 0.263 signifie que l'audio sera lu à environ 26 % de son volume d'origine.

Pitch : Ajuste la hauteur du clip audio. La valeur par défaut est 1. Des valeurs plus basses ralentissent et abaissent le son, tandis que des valeurs plus élevées accélèrent et augmentent la hauteur.

Stereo Pan : Contrôle la panoramique stéréo de l'audio. Une valeur de -1 place l'audio complètement à gauche, 1 complètement à droite, et 0 le centre.

Spatial Blend : Détermine le mélange entre l'audio 2D et 3D. Une valeur de 0 rend le son entièrement 2D (non affecté par la position de l'auditeur), tandis que 1 le rend entièrement 3D (affecté par la position de l'auditeur).

Reverb Zone Mix : Ajuste la quantité de la source audio qui est mélangée dans les zones de réverbération de la scène. La valeur par défaut est 1.

Résumé

Audio Listener : Capture tout l'audio de la scène et est généralement attaché à la caméra principale ;

Audio Source : Lit des clips audio et peut être configuré avec divers paramètres pour contrôler la façon dont l'audio est lu et entendu ;

Principaux paramètres : Incluent AudioClip, Output, Mute, Bypass Effects, Play On Awake, Loop, Priority, Volume, Pitch, Stereo Pan, Spatial Blend et Reverb Zone Mix.

Ces composants fonctionnent ensemble pour gérer et contrôler l'expérience audio dans Unity, offrant des environnements sonores immersifs et dynamiques pour les jeux.

Lecture du son d'attaque

private void Update()
{
    if (isAttacking)
    {
        RaycastHit2D rayCastHit = Physics2D.Raycast(transform.position, Vector2.right * transform.localScale.x, range, enemyLayer);
        if (rayCastHit)
        {
            if(rayCastHit.transform.TryGetComponent(out IGetAttacked getAttacked))
            {
                // Play attack sound
                attackAudioSource.Play();
                
                // Apply damage to the enemy
                getAttacked.GetAttacked(damage);
                
                // Play attack effect
                attackEffect.transform.position = rayCastHit.point;
                attackEffect.Play();
                
                // Stop attacking
                isAttacking = false;
            }
        }    
    }
}

Explication de l'utilisation de l'AudioSource

Détection par Raycast : Un raycast est utilisé pour détecter si l’attaque du joueur touche un ennemi. Le raycast est lancé depuis la position du joueur dans la direction vers laquelle il fait face, avec une portée définie par attackRange.

Vérification de la collision : Si le raycast touche un objet dans le enemyLayer, le script vérifie si l’objet touché implémente l’interface IGetAttacked.

Lecture du son d'attaque : Lorsqu’un impact est détecté et que l’ennemi peut être attaqué (interface IGetAttacked implémentée), le son d’attaque est joué : attackAudioSource.Play().

Résumé

Dans la classe PlayerAttack, AudioSource joue un effet sonore lorsque le joueur attaque avec succès un ennemi, déclenché par attackAudioSource.Play() dans la méthode Update après un impact détecté par raycast. Cela fournit un retour auditif immédiat, renforçant l’immersion dans le jeu.

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 4. Chapitre 5
some-alt