Unity UniTaskによる処理の待機

 

 

Unityで何秒か待ってから処理をさせたいものがあるんだけど、いい方法ない?

 

 

 

 

Unityでは、処理の待機をするための方法としてコルーチンという関数がありますが、それよりも株式会社CySharpが提供しているオープンソースライブラリの「UniTask」というものが使いやすいですよ。

 

 

 

 

「UniTask」を使用するためには、まず、githubからダウンロード・インストールする必要があります。

 

 

 

 

インストールには、UnityのPackage Managerからインストールすることができます。

 

 

 

 

URLを入力するだけでできるやつだね。

 

 

 

 

そうです✨早速やってみましょう。

 

 

 

 

 

まず、「Window」→「Package Maneger」から、Package Maneger画面を表示します。

 

 

 

 

 

 

 

 

 

 

左上の「+」ボタンから「Add package from git URL」を選択します。

 

 

 

 

 

 

 

URLを表示する欄が表示されますので、以下のURLを入力して、「Add」をクリックします。

 

 

 

UniTaskインストールURL

https://github.com/Cysharp/UniTask.git?path=src/UniTask/Assets/Plugins/UniTask

 

 

 

 

 

Package Maneger画面に以下のようにUniTaskが表示されましたら、インストールは完了です✨

 

 

 

 

 

 

 

 

それでは、次にUniTaskの基本的なコードを書いてみます。以下のは、5秒間まってから、コンソールに「成功」と表示されるサンプルコードです。

 

 

 

 

 

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

using System; //UniTask使用のため追加
using Cysharp.Threading.Tasks; //UniTask使用のため追加

public class UniTask001 : MonoBehaviour
{
    //待機時間を変数へ格納
    float waitTime001 = 5f;
    
    async void Start()
    {
        //待機時間後にコンソール出力
        await UniTask.Delay(TimeSpan.FromSeconds(waitTime001));
        Debug.Log("成功");
    }
}

 

実行するために空のオブジェクトを作成し、そこに作成したスクリプトをアタッチします。

 

 

 

 

 

 

再生ボタン「▶」で実行して、5秒後にコンソールに「成功」と表示されます。

以上がUniTaskの基本的な使い方です。

 

 

 

 

 

 

 

 

基本的なコードを作っておけば、いくらでも使いまわせるね。ありがと!

 

 

 

 

 

 

 

 

 

 

 

お名前


削除キー(必須)

コメント(必須)


サイト内検索

twiter

CONTENTS

 

 

 

くるくるサンプルコード

 

 

 

【↓広告↓】