アズマ
37 views
タグを編集する

遅延処理の練習

Unityの作業似て用いられる遅延処理の中で結構ベターな処理であるStartCoroutineについてまとめてるだけ。

コルーチンってなんぞや

image

中断可能な処理のことでござる( ˘ω˘)

今回使うStartCoroutineはそのコルーチンの中でも「一定時間中断処理をする」という意味になります。

まずは実際の処理を見ましょう。

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
void Start()
{
 //(1)コルーチンの格納と再生処理
 Coroutine croutine = StartCoroutine("Tiensyori",1.0f);
}

(1+)
private IEnumerator Tiensyori(float s_waitTime)
{
 //(2)遅延処理の実行と停止時間の挿入
 yield return new WaitForSecond(s_waitTime);

 //(3)遅延後に行いたい処理
 (以下文章)~~~~~~~~~~~~~~~~

}

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

上記では「1.0fの間、処理を中断する」という処理を行っています。

Start関数で(1)が呼び出され、(1)に記載されているStartCoroutineをCoroutine型であるcroutineに格納します。

呼び出した後、引数に含まれているTiensyoriを実行します。

呼び出されたTiensyoriは(2)に記載されているWaitForSecond関数をreturnで返し、中断処理を行います。

この際、WaitForSecondは中断する秒数を()の中の引数と同じにするため、s_waitTimeを引き数に入力しています。

この時注意として(2)に記載されたyield return 以前に行われた処理は遅延処理が発生せず、遅延後に処理を行いたい場合はyield return以降に処理を記載しなければならない。

この記事はどうでしたか?
👍&ツイートをお願いします!

コメント

コメントにはログインが必要です

アズマ
33 投稿

ななれん

ゲーム紹介
初心者の方へ
リセマラ
Tips

ゲームシステム

マーケット
ガチャ
拠点
部隊
アニマ
スキル
ミッション

錬金術

素材
アニマ錬成
道具
装飾品

クエスト

魔獣討伐
アロマ討伐
素材探索
クラス昇級試験

イベント

追跡!赤針の舞踏姫
過去イベント

リンク

公式Twitter
公式サイト
AppStore
GooglePlay

その他

メニュー
編集ガイド

最新の5件

メニュー
読み込み中