まずは 試してみる
iPhone での AR は Apple のこちらのサイトで体験できます。
developer.apple.com
iPhone 向けの AR コンテンツを作成
iPhone で簡単に AR コンテンツを作成するには USD(Universal Scene Description) 形式のファイルを準備をするのが一番簡単です。 USD は CGアニメ映画で有名な Pixar が作成したファイルフォーマットです。
USD ファイルは「 USD ファイルと関連するテクスチャファイルなど」という複数ファイルの構成となり、煩雑です。そこで iPhone の AR では USD ファイルでは無く、「 USD ファイルと関連するテクスチャファイルなど」を1つの非圧縮zipにまとめた「 USDZ 」というファイル形式を使用します。
Unity は既に公式で USD フォーマットに対応しています。Unity公式ブログのこちらの記事に Untiy で USD を使える様にするパッケージの事について書かれていますがパッケージの追加は現在では手順が変わっている為、手順を解説しておきます。
USD を使える様にするパッケージを追加
USD のパッケージについては Unityのドキュメントのこちらのページに記載が有ります。
このページを見るとパッケージ名が com.unity.formats.usd だという事が確認できます。
これからこのパッケージ名を使ってパッケージを追加します。
Package Manager を開き、「+」アイコンをクリック > 「Add Package from git URL」と選択
com.unity.formats.usd と入力し、「Add」ボタンをクリック。
この画面の「install」ボタンをクリックすると USD パッケージを追加できます。
パッケージの追加以外の部分についてはこちらの記事の内容がそのまま使えます。シーンの色空間を「Linear」に変更するところから「Skin Weights」を「Unlimited」に設定する所までの作業を行って下さい。
USD ファイルで保存する環境を構築
Unity 上に配置したオブジェクトを USD 形式のファイルとして出力する為に Unity Recorder パッケージを追加します。
Package Manager を開き、表示を「Unity Registry」に変更。
「Recorder」で検索すると「Unity Recorder」が見つかるのでこちらを追加します。
USDZ ファイルに保存
環境の準備が終わったのでいよいよ USDZ ファイルに保存する方法の解説です。
まず、Unity のシーン上に USDZ ファイルに保存したい 3D モデルを配置しておきます。
メニューから Window > General > Recorder > Recorder Window と選択すると以下のウィンドウが表示されます。
「+ Add Recorder」をクリック > 「USD Clip」と選択すると以下の様になります。
Capture の Source に USDZ ファイルに保存したい GameObject を設定します。
「Export Format」を「USDZ」に変更します。
「START RECORDING」ボタンを押すと「STOP RECORDING」と表示が切り替わり、ゲームが実行されます。ゲームの起動が終わったら「STOP RECORDING」ボタンを押します。
これで USDZ ファイルが作成されました。このアイコンをクリックすると保存されたフォルダが開きます。