2023年6月24日土曜日

アセット外の音楽ファイルを鳴らすサンプル

プロジェクト(アセット)外部の音楽ファイルを鳴らす方法。

  •  1.AudioSourceをシーンのゲームオブジェクトの張り付ける
  • 2.実行ファイル(プロジェクト直下)にoto1.mp3を配置
  • 3.以下のコードを動作


AudioSource ads = GetComponent<AudioSource>();

yso.OtoSaisei(ads, @"/" + "oto1.mp3");

   public void OtoSaisei(AudioSource oto,string name)//2023

    {

        if (od.isNaibu==false)//外部ファイルを使う

        {

            od.StartCoroutine(StreamPlayAudioFile(oto,name));

        }

        else//プロジェクト内部のファイルを使う

        {

            oto.clip = (AudioClip)Resources.Load(name);

            oto.Play();

        }

        }

    IEnumerator StreamPlayAudioFile(AudioSource oto,string fileName)

    {


        // appファイルの直下のパスを取得

        string stCurrentDir = System.IO.Directory.GetCurrentDirectory();

       using (WWW www = new WWW(stCurrentDir + fileName))

        {

            yield return www;

            oto.clip = www.GetAudioClip(true, true);

            oto.Play();

        }

    }

注意点 以下のエラーが発生する場合は一度環境(ソフト)を再起動してください。

Failed to decompress data for the AssetBundle 'Memory'.

UnityEngine.WWW:get_assetBundle ()


0 件のコメント:

コメントを投稿