強火で進め

このブログではプログラム関連の記事を中心に書いてます。こちらで( http://blog.livedoor.jp/tsuyobi-outdoor/ ) アウトドア関連の記事も書いてます。

Unity を使って iPhone 向けの AR コンテンツを簡単に作る方法(USDZファイルを出力する方法)

まずは 試してみる

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 だという事が確認できます。
f:id:nakamura001:20210930052504p:plain

これからこのパッケージ名を使ってパッケージを追加します。

Package Manager を開き、「+」アイコンをクリック > 「Add Package from git URL」と選択
f:id:nakamura001:20210930035652p:plain

com.unity.formats.usd と入力し、「Add」ボタンをクリック。
f:id:nakamura001:20210930035704p:plain

この画面の「install」ボタンをクリックすると USD パッケージを追加できます。
f:id:nakamura001:20210930040307p:plain

パッケージの追加以外の部分についてはこちらの記事の内容がそのまま使えます。シーンの色空間を「Linear」に変更するところから「Skin Weights」を「Unlimited」に設定する所までの作業を行って下さい。

USD ファイルで保存する環境を構築

Unity 上に配置したオブジェクトを USD 形式のファイルとして出力する為に Unity Recorder パッケージを追加します。

Package Manager を開き、表示を「Unity Registry」に変更。
f:id:nakamura001:20210930042628p:plain

「Recorder」で検索すると「Unity Recorder」が見つかるのでこちらを追加します。
f:id:nakamura001:20210930042630p:plain

USDZ ファイルに保存

環境の準備が終わったのでいよいよ USDZ ファイルに保存する方法の解説です。

まず、Unity のシーン上に USDZ ファイルに保存したい 3D モデルを配置しておきます。

メニューから Window > General > Recorder > Recorder Window と選択すると以下のウィンドウが表示されます。
f:id:nakamura001:20210930043723p:plain

「+ Add Recorder」をクリック > 「USD Clip」と選択すると以下の様になります。
f:id:nakamura001:20210930044710p:plain

Capture の Source に USDZ ファイルに保存したい GameObject を設定します。
f:id:nakamura001:20210930044720p:plain


「Export Format」を「USDZ」に変更します。
f:id:nakamura001:20210930051348p:plain

「START RECORDING」ボタンを押すと「STOP RECORDING」と表示が切り替わり、ゲームが実行されます。ゲームの起動が終わったら「STOP RECORDING」ボタンを押します。
f:id:nakamura001:20210930051419p:plain

これで USDZ ファイルが作成されました。このアイコンをクリックすると保存されたフォルダが開きます。
f:id:nakamura001:20210930051644p:plain

iPhone で AR 表示を確認

作成した USDZ ファイルは「メールで送る」「Dropboxに保存して開く」など何らかの方法を使って iPhone 上で開くだけで AR 表示ができます。

なお、 Unity 上でアニメーションを付けておくとアニメーションも AR 上で再生されます。