非同期処理実装中

ドキュメントが読みたくなさ過ぎて、溜まってた漫画がえらい読み進んだw(「殺し屋は今日もBBAを殺せない。」「あさひなぐ」「海月姫」)。何にしろ、何かの勢いに乗せてやるとちょっとは進む。

ようやっと色々ドキュメント読み進めて、非同期処理のあらましを理解。コルーチンが基本で、もうちょっと色々やりたけりゃあAsync/Await、さらにモダンなUniRxってライブラリがあるそう。いずれにしても、メソッドを非同期設定して、要所要所で次や数秒先のフレームに続きの処理を送り、いい案配で負荷をフレームにバラけさせることでフリーズ現象を回避できると。

とりま、今回はStartメソッドに負荷が集中してるんで、最も単純に、Startメソッドをコルーチンにして、スキームに合わせてオブジェクトを整理する事にした。

したっつっても、PCで実行してもQuest本体と全く挙動が違うんで調整にならんので、いちいちビルドしてはQuest本体で確認せんならん。ビルドに1時間もかかるのに(;´Д`)。

ビルドを早くするために軽いシーンでやると効果が分らんという(;´Д`)。

その上、実際やってみると、負荷が高い箇所で、なんかオクルージョンカリングとかも絡んでんのか、出す順番で新たに謎の負荷が発生したりするっていう(;´Д`)。

そうして、なぜか途中で止まったり、どこで負荷が発生してるか判らんかったり、そも無駄な処理が見つかって直したりしながら、ビルド&チェックを果てしなく繰り返し中。徐々には良くなってるが(;´Д`)。3歩進んで2歩下がる。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA