Browsed by
Month: 2023年9月

[iOS] Object Capture を使ったモデル生成と UE5 への配置

[iOS] Object Capture を使ったモデル生成と UE5 への配置

iOS17 (iPhone Pro シリーズのみ)から Object Capture と呼ばれる機能が利用できるようになった。これを使うことで、3D モデルを iPhone 単体で手軽に生成することが出来る。

アプリのインストール

Object Capture に対応したアプリを iPhone にインストールする。

Photogrammetry というアプリが日本語で利用できた。ただ、中身は Apple が提供しているサンプルコードそのものなので、自分で xcode からビルドできる人は、サンプルからビルドして転送した方が良いかもしれない。その方が、広告も無いし、知識があれば自分で使いやすいようにカスタマイズも出来る。

https://developer.apple.com/documentation/realitykit/guided-capture-sample

アプリを導入して、画面の指示に従いつつキャプチャーすれば、およそ5分~10分で 3D データの生成が完了でき、iPhone 端末内に保存される。なお、ファイル形式は usdz になっていた。

PC に転送

転送方法はいろいろある。iCloud で共有して、PC でダウンロードしてもいいが、私は iPhone 内に保存されたファイルを選択して AirDrop で Mac PC に送信した。

Blender で開く

Blender 3.5 から?usdz の import に対応している。

Import から usd を選択して、PC に転送たい usdz ファイルを選択する。

画像に alt 属性が指定されていません。ファイル名: 2023-09-28_13h56_17-1024x591.png

読み込みが完了した後に、Viewport の右上を変えることで、テクスチャの表示に切り替えることができる。

UE5 インポート

Blender への読み込みが完了すれば、あとは FBX で出力して、UE5 に持ってくれば良い。

[Unity] Apple Silicon の mac で iOS/Android ビルド

[Unity] Apple Silicon の mac で iOS/Android ビルド

Unity Hub のインストール

私の探し方が悪かったのか、なぜか通常の Download のページからでは mac 版のインストーラーが見つからなかった。そのため、下記フォーラムを参照した。

https://forum.unity.com/threads/installing-the-native-apple-silicon-editor.1188253/
Spoiler: You are starting from scratch を選択すると、Unity Hub インストーラーへのリンクが表示される。Unity Hub の dmg ファイルが落とせたのでこれをインストールする。

バージョンは 3.5.2-beta.1 だった。

プロジェクトの作成

プロジェクトテンプレートから新規プロジェクトを作成するが、この時に「3D Mobile」を選択したら Android の Build に失敗した。そのため、プロジェクトを選ぶ時は「3D」を使用した。(恐らく 3D Sample Scene URP でも大丈夫だと思われる)

Android ビルド

Unity インストール時に Android Build Support にチェックを入れておく。

プロジェクトを開いて File -> Build Settings を選択する。Platform が選べるので Android を選んで「Switch Platform」を押す。少し待てば Unity が Android に切り替わる。これで Android 向けのビルドできるようになる。

Android 端末を接続した状態で「Build and Run」を押せば apk の作成と実機への転送まで自動で行われる。

なお、ビルド前に Scenes In Build に、シーンをドラッグして追加しておく必要がある。0 と書かれているのは起動時に読み込まれるシーン。

iOS ビルド

Unity インストール時に iOS Build Support にチェックを入れておく。

プロジェクトを開いて File -> Build Settings を選択する。ビルドは Platform を iOS を選択して、Switch Platform をしてから「Build and Run」を行う。手順は Android と一緒だが、iOS の場合は ipa を作成するために、xcode でビルドしないといけない。

Unity からは実行ファイルではなく xcodeproj が出力される。これを xcode で開いてビルドする。

xcode ビルド

xcodeproj を開いただけではビルドできない。適切な Signing 設定を行う。私は「Automatically manage signing」にチェックを入れて、Bundle Identifier に任意の値を入れたらビルドが通った。