main BBS › フォーラム › システム・仕様系Q&A › UnityでEmotePlayer生成時に確保したメモリについて › 返信先: UnityでEmotePlayer生成時に確保したメモリについて
2017年11月7日 18:54
#7290
emote_ofc
キーマスター
E-moteへご質問いただき誠にありがとうございます。
UnityのMONOフレームワークは一旦取得したメモリは開放しても総メモリ量は減らない構造になっておりますため、プレイヤの破棄後にその場でメモリ使用量が減らない現象自体は問題ございません。
—————————–
詳細:
・MONOフレームワークでは一旦使用されたメモリ上限は減らない
Unityで使用されているMONOフレームワークでは、確保されたメモリ領域が解放されても、一旦増えた「メモリ上限」はそこから減ることはありません。
これは単なる見た目上の問題で、実際には新たにメモリを確保する際には解放済みの領域が使用されるため問題はありません。
・一部のアセットの解放タイミングはシーンをまたぐ
EmotePlayerの生成・破棄を繰り返すとメッシュとマテリアルの総数が増えていきますが、これもUnityの仕様です。
これらのアセットはシーンを移動するタイミングで自動的に解放されます。
どうしても気になる場合には、Resources.UnloadUnusedAssets() を実行することで明示的にアンロードすることが出来ます。
—————————–