夜風のMixedReality

xRと出会って変わった人生と出会った技術を書き残すためのGeekなHoloRangerの居場所

Impostors - Runtime Optimizationを使用してUnityシーンの最適化を行う。 その① Unity2020環境でのエラーの解消

本日はUnity調査枠です。

今回はUnityでxR開発における軽量化を行うためのツールの一つである有料AssetsImpostors - Runtime Optimizationを触っていきます。

エラーが発生し、解消に時間がかかったため今回はエラーの解消とサンプルをどうささせるまでを記事にします。

〇Impostors - Runtime Optimization

Impostors - Runtime OptimizationはUnityAssetsStoreで販売されているUnityのアセットです。

assetstore.unity.com

xRアプリでは特にポリゴン数が多い場合パフォーマンスが低下します。

Impostors - Runtime Optimizationを使用することで特にユーザー視点での遠景のオブジェクト等を疑似的なポリゴンに変換することで軽量化を行うことができるようです。

〇ネームスペースエラーの解消

Impostors - Runtime Optimizationをインポートするとネームスペース関連でのエラーが表示されました。

Amplify Impostorsを使用するためにはUnityのMathematicsをインポートする必要がありそうです。

①PackageManagerを開きます。

②上部の[+]タブから[Add package from git URL...]を選択します。

com.unity.mathematics

を入力してUnity.mathematicsをインストールします。

また[Burst]も導入します。こちらはUnityのPackageManagerでデフォルトで表示されています。

③まだ残っているエラーがあります

これは筆者の環境がUnity2020であるため発生しているようで、解消するためにはUnity.Collectionsのパッケージを入れる必要があります。

これは以下のGitURLからインポートすることができます。

com.unity.collections

以上でネームスペースのエラー地獄から抜け出すことができました。

〇サンプル

Amplify Impostorsはサンプルが含まれています。今回はこちらを見ていきます。

Exampleシーンを開きます。

シーンを実行します。このシーンではウィンドウ上部右側のプルダウンからオブジェクト数を選択するとオブジェクトが生成されます。 また上部にはFPSが表示されています。

ウィンドウ左側にはチェックボックスがあり、チェックボックスを外すことでImpostors - Runtime Optimizationの機能がオフになります。FPSが300後半から150以下に落ちることがわかりました。

見た目は大きく変わっておらず、しかし大きくパフォーマンスが上がることが確認できました。

今回はエラー解消で時間を使ってしまったので次回実際のコンポーネントなどを見ていきます。

Impostors - Runtime Optimizationはこちらで入手することができます。

※2022/10/23追記 アセットのリンクが間違っていましたので修正しました。