簡體   English   中英

如何使用 GetComponent 播放音頻? (統一,C#)

[英]How do I make audio play with GetComponent? (Unity, C#)

我正在使用 C# 在 Unity 中制作一個掃雷版本,用於一個項目,其中不同的音頻播放一個鏡頭,具體取決於您單擊的框內的數字(與每個炸彈相鄰,例如“1”將播放主要和弦,“2”小和弦等)

我的部分代碼與此相關:

// Different Textures
public Sprite[] emptyTextures;
public Sprite mineTexture;
public AudioSource myFx;
public AudioClip[] audioFiles;

// Load another texture
public void loadTexture(int adjacentCount)
{
    if (mine)
        GetComponent<SpriteRenderer>().sprite = mineTexture;
    else
        GetComponent<SpriteRenderer>().sprite = emptyTextures[adjacentCount];
}

我似乎無法讓音頻正常工作。 我想它會是這樣的?

GetComponent<SpriteRenderer>().sprite = emptyTextures[adjacentCount];
GetComponent<AudioSource>().clip = audioFiles[adjacentCount];

但我只是不斷收到錯誤。 我對 C# 非常陌生,因此我們將不勝感激。 謝謝: :)

ps 我一直在使用本教程來創建它: https://noobtuts.com/unity/2d-minesweeper-game

編輯:錯誤:

MissingComponentException: There is no 'AudioSource' attached to the "default" game object, but a script is trying to access it.

有一個音頻源(myFx),但是當我刪除它並將音頻源直接添加到游戲對象時,我沒有收到錯誤但沒有音頻播放。

您在正確的軌道上 - 您指定要播放的剪輯

GetComponent<AudioSource>().clip = audioFiles[adjacentCount];

剩下要做的就是通過調用實際播放剪輯

GetComponent<AudioSource>().Play();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM