vrm-c / UniVRM_1_0

DEPRECATED

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

非同期のアセット構築・コンポーネント構築の実装

ousttrue opened this issue · comments

RunTimeロードのコンポーネント構築で、FrameRateを維持するために1フレームの処理を小出しにする。
全体の処理時間は伸びるが、フレーム当たりの処理時間をなるべく抑えてスパイクを回避する。
スクリプトスレッド上の実行が必要な Mesh, Texture2D等のUnity Assetの生成を1フレームに一つずつにする方向性。

vrm-c/UniVRMUtility#7

にて実装。
処理を細かく分けて間で yield return null する。
これを再利用しようとすると可読性が著しく落ちるのでこれでいいかなと。

https://github.com/vrm-c/UniVRM/blob/master/Assets/VRM/UniGLTF/Scripts/IO/ImporterContext.cs#L509

のような非同期の手順構築は読みにくい。