2016-12-17 9 views
1

Ich versuche jedes Mal, wenn ich die Maustaste drücke, Audio-Funktion (einen kurzen Clip) zu bekommen. Es funktioniert, wenn ich Play direkt anrufe. Aber ich möchte die Option haben, Audioclip mit PlayOneShot zu übergeben, aber es gibt kein Audio. Es ist kein Volume-Problem, da ich versucht habe, das Argument für das Volume ohne Unterschied weiterzugeben. Der Audioclip wurde dem Inspektor hinzugefügt.Audio funktioniert nicht für PlayOneShot, aber funktioniert für Play

Bitte um Rat. Vielen Dank.

public class Player : MonoBehaviour { 

    private AudioSource audioSource; 
    [SerializeField] private AudioClip impactSound; 

    void Start() { 
     audioSource = GetComponent<AudioSource>(); 
    } 

    void Update() { 
     if (Input.GetMouseButtonDown(0)) { 
      //audioSource.Play(); // This works 
      audioSource.PlayOneShot(impactSound, 0.8f); // not working 
     } 
    } 
} 

Antwort

2

Es gibt kein Audio, weil Sie nicht Ihre Audio-Datei auf die impactSound Steckplatz zuweisen. Wählen Sie impactSound und ziehen Sie das Audio dorthin. Es sollte danach Audio abspielen.

Sie erhalten keine Ausnahme, wenn das Audiomaterial nicht im Editor zugewiesen ist. Das Audio wird nicht wiedergegeben. Wenn Sie dies bereits getan haben und Audio nicht abgespielt wird, doppelklicken Sie auf dieses Audio, um sicherzustellen, dass es tatsächlich außerhalb von Unity abgespielt wird.

+0

Ich hatte es zur Audioquelle hinzugefügt, aber nicht impactSound. Schöner Ort. Vielen Dank. – kar

+0

Das passiert manchmal. Wish Unity würde eine Fehlermeldung anzeigen, um das Auffinden zu erleichtern. – Programmer

Verwandte Themen