Einheit – Musik, Soundeffekte

Während das Spiel läuft, ist der Abspielzeitpunkt der Soundeffekte eng mit dem aktuellen Inhalt des Spiels verknüpft, und wenn sich die Szene ändert und die Handlung voranschreitet, muss auch die Hintergrundmusik zeitnah umgeschaltet werden, was auch der Fall ist Es ist sehr wichtig, die Wiedergabe von Musik und Soundeffekten richtig zu steuern. Das Abspielen, Stoppen, Umschalten und Ändern der Lautstärke von Musik und Soundeffekten muss über Skripte gesteuert werden.


1. Verwenden Sie Skripte, um die Musikwiedergabe zu steuern

Einfach ausgedrückt: Solange Audioquellenkomponenten und Audioressourcen vorhanden sind, kann Musik abgespielt werden. Normalerweise ist es jedoch erforderlich, anzuhalten, die Musik zu wechseln usw. Im Folgenden wird anhand eines Beispielskripts veranschaulicht, wie Musik abgespielt wird. Die Schritte sind wie folgt

  1. Erstellen Sie ein TestAudio-Skript und hängen Sie es an ein beliebiges Objekt
  2. Erstellen Sie ein Audioquellenobjekt. Der Standardobjektname lautet „Audioquelle“.

Der Skriptinhalt ist wie folgt 

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class TestAudio : MonoBehaviour
{
    //从外部指定声音片段
    public List<AudioClip> clips;
    //音源组件
    AudioSource audio;

    void Start()
    {
        //获取音源组件
        GameObject go = GameObject.Find("Audio Source");
        audio = go.GetComponent<AudioSource>();
        //先停止播放
        audio.Stop();
        //不循环
        audio.loop=false;
    }

    void Update()
    {
        if(Input.GetKeyDown(KeyCode.Alpha1))
        {
            //切换到音乐0并播放
            audio.clip=clips[0];
            audio.Play();
        }
        if (Input.GetKeyDown(KeyCode.Alpha2))
        {
            //切换到音乐1并播放
            audio.clip = clips[1];
            audio.Play();
        }
        //按空格键 暂停/继续
        if (Input.GetKeyDown(KeyCode.Space))
        {
           if(audio.isPlaying)
            {
                audio.Pause();
            }
            else
            {
                audio.UnPause();
            }
        }
    }
}

 Die Skriptfunktion besteht darin, das erste Audiostück entsprechend der Nummer abzuspielen, die Taste zu drücken, um das zweite Stück abzuspielen, und die Leertaste zu drücken, um die Wiedergabe anzuhalten oder fortzusetzen

Das Skript verwendet ein öffentliches Listenfeld zum Speichern von Audioressourcen. Um den variablen Clips einen Anfangswert zuzuweisen.

Das Obige zeigt die allgemeinen Methoden der Audioquellenkomponente und die Eigenschaften der Audioquelle können durch Skripte geändert werden

2. Fügen Sie Soundeffekte hinzu

Der Ansatz zur Verwendung von Musik und Soundeffekten in Unity ist derselbe, es sind jedoch einige wichtige Punkte zu beachten.

Erstens kann eine Audioquelle jeweils nur ein Audio abspielen. Mit anderen Worten: Wenn 10 Soundeffekte gleichzeitig abgespielt werden, sind 10 Soundquellen erforderlich. Daher verfügt jeder Charakter im Spiel im Allgemeinen über eine Audioquellenkomponente. Wenn beispielsweise der Feind schreit und der Protagonist eine Waffe schwingt, wird an jeden Feind und den Protagonisten eine Audioquellenkomponente gehängt. Wenn die Waffen-Soundeffekte, Sprung-Soundeffekte und Verletzungs-Soundeffekte des Protagonisten gleichzeitig abgespielt werden können, können drei Audioquellenkomponenten an den Protagonisten gehängt werden, die einem Soundeffekt entsprechen (natürlich können auch Audioquellenkomponenten sein). auf anderen Objekten platziert).

Zweitens besteht die Schwierigkeit beim Hinzufügen von Soundeffekten im Timing der Soundeffekte. Es ist nicht gut, wenn Soundeffekte früher oder später als die Aktionen des Charakters abgespielt werden. Und entsprechend der Logik des Spiels muss dieselbe Aktion manchmal von Soundeffekten begleitet werden, manchmal nicht. Daher ist es auch sehr wichtig, die Bedingungen für das Abspielen von Soundeffekten herauszufinden.

Supongo que te gusta

Origin blog.csdn.net/m0_63024355/article/details/132528833
Recomendado
Clasificación