ARFoundationとURPでカメラが真っ黒になる問題の解決方法

はじめに

UnityでARアプリケーションを開発する際、ARFoundationとUniversal Render Pipeline (URP) を組み合わせて使用することがあります。しかし、この組み合わせを使用した際に、アプリ起動時にカメラビューが真っ黒になってしまう問題が発生することがあります。この記事では、その原因と解決方法について解説します。

問題の原因

この問題には主に二つの原因があります。

  1. Render FeatureにAR Backgroundが含まれていない: URPでは、カメラのレンダリング設定をカスタマイズするために「Render Feature」を使用します。ARFoundationを使用する場合、カメラの背景にARの映像を表示するために「AR Background」のRender Featureが必要です。デフォルトの設定では、このRender Featureは含まれていません。

  2. iOSデバイスでのCamera Usage Descriptionの不足: iOSでARアプリを実行する場合、アプリがカメラの使用をユーザに通知するための「Camera Usage Description」を設定する必要があります。この設定がないと、アプリはカメラのアクセス権を得られず、結果的に画面が真っ黒になります。

解決策

AR Backgroundの追加

  1. Unityエディタで、URPのRender Pipeline Assetを開きます。

  2. 「Renderer」セクションに移動し、「Add Renderer Feature」ボタンをクリックします。

  3. ドロップダウンリストから「AR Background」を選択し、追加します。(一番下に追加されているのがわかります。)

iOSのCamera Usage Descriptionの設定

  1. 「Project Settings」ウィンドウを開き、「Player」セクションに移動します。

  2. 「iOS Settings」を選択し、下にスクロールして「Other Settings」に移動します。

  3. 「Camera Usage Description」フィールドに、カメラアクセスの理由を記述します。

まとめ

ARFoundationとURPを使用する際に発生するカメラが真っ黒になる問題は、上記の手順に従うことで解決できます。これにより、ARアプリケーションの開発がスムーズに進むことを願っています。


この記事が気に入ったらサポートをしてみませんか?