タグ

unityとTaskに関するtake-yuのブックマーク (3)

  • 【Unity】一定時間後にスクリプトの処理を呼び出す方法まとめ - Qiita

    この記事について 古い記事のPVが未だにそれなりにあるので、2021年現在のやり方で書き直してみました。 2024年版として書き直しました。 やりたいこと 「スクリプトの実行タイミングを操作したい」です。 つまり一定時間後に指定した処理を実行するといった処理をどう書くか紹介します。 先に結論 UniTaskを使いましょう。 Unity標準機能だけでも実現はできますが、柔軟性が無かったりパフォーマンスが出ない場合があります。 UniTaskを使えばだいたい解決します。 標準機能のみで書く場合 外部ライブラリを用いず、UnityやC#の機能のみで記述する場合のやり方。 処理をN秒後に実行したい Invokeを使う MonoBehaviour.Invoke()メソッドを使うことで指定した処理を一定秒数後に呼び出すことができます。 引数には対象のメソッド名を指定します(nameofで指定すると便利

    【Unity】一定時間後にスクリプトの処理を呼び出す方法まとめ - Qiita
  • 【Unity】非同期処理を簡単に記述できる「UniTask」の使い方をいくつか紹介 - コガネブログ

    はじめに 「UniTask」を Unity プロジェクトに導入することで 非同期処理を簡単に記述できるようになります この記事では「UniTask」の使い方をいくつか紹介していきます 目次 はじめに 目次 検証環境 導入方法 使用例 Resources.Load を非同期で待つ シーンの読み込みを非同期で待つ 指定したフレーム数待つ 指定した秒数待つ コルーチンを待つ 指定した条件が true になるまで待つ 指定した条件が false になるまで待つ 自作の非同期メソッドを待つ UnityWebRequest を待つ 進捗を取得する 3D の当たり判定を待つ 2D の当たり判定を待つ ボタンが押されるのを待つ Awake、Start、OnDestroy を待つ OnEnable、OnDisable を待つ AsyncLazy(非同期遅延初期化)を書く すべての非同期処理が終わるまで待つ

    【Unity】非同期処理を簡単に記述できる「UniTask」の使い方をいくつか紹介 - コガネブログ
  • 【Unity開発者向け】「SynchronizationContext」と「Taskのawait」 - Qiita

    はじめに Unity 2018から.NET 4.6がstableになり、async/awaitやTask使いこなせるようになっておく必要がでてきました。 今回はそれらの裏に隠れている、SynchronizationContextという機構とその使い方について紹介します。 なお、この記事はUnity2018.1bを基準に書いています。 SynchronizationContextとは何なのか SynchronizationContextとは、ざっくり説明すると「指定した処理を指定したスレッドで実行するために用いるオブジェクト」です。 非同期処理を実行する場合、あるスレッドから別スレッドに処理を移譲することになります。 このとき、「非同期処理が終わったときに元のスレッドに処理を戻す」という需要が発生します。 これを解決するのがSynchronizationContextというオブジェクトです。

    【Unity開発者向け】「SynchronizationContext」と「Taskのawait」 - Qiita
  • 1