この記事は、”Unreal Engine (UE) Advent Calendar 2022 その2" の5日目の記事となります。
本記事では、先日12月1日にリリースされた3Dスキャンアプリ「RealityScan」でスキャンしたモデルを Unreal Engineエディターのレベル上に配置するまでの手順を書きたいと思います。
0.事前準備
・Epic Games アカウント
RealityScan を利用するには、Epic Games アカウントが必要になります。
アカウントを持っていない場合は登録しましょう。
https://www.epicgames.com/id/login
・Sketchfab アカウント
UEにインポートするには、Sketchfab を経由します。
アカウントを持っていない場合は登録しましょう。Epic Games のアカウントでも登録できます。
Log in to your Sketchfab account - Sketchfab
・OSのアップデート
RealityScan は iOS16.0 以降に対応しています。iOS16.0 以前の場合はアップデートしましょう。
・インターネット接続環境
アプリ上で Epic Games, Sketchfab へのサインインが必要です。
また、写真の撮影自体はオフラインで可能ですが、画像の解析やモデルの生成処理はサーバー上で行われます。
1.アプリのインストール
App Store から RealityScan をインストールします。
apps.apple.com起動するとチュートリアルが始まります。
内容はこちらの動画と同様のものです。不要な場合は Skip します。
2.撮影
まずは被写体を撮影します。今回はネッシーのぬいぐるみを撮影してみます。
以下のような被写体は向いていないとのこと。
- 直射日光など強い光が当たる被写体
- セラミックやプラスチックなど反射する素材
- 表面が濡れていて色が変わっている素材
また、実際にスキャンをしてみた感覚ですと、屋内よりも屋外で自然光が充分当たっている被写体の方がうまくいく気がします。
(今回は記事の都合上屋内でのスキャンです。)
被写体をぐるぐる回りながら何枚も写真を撮っていきます。
撮影の距離は一定にした方がスキャンの精度が上がります。最低20枚撮る必要がありますが、精度の高いスキャンをするには50枚以上は必要だと思われます。
3.モデルの作成
撮影をするとスキャンされた箇所に特徴点(点群)が表示されます。
精度によって色が違い、赤に近いほど精度が低く、緑に近いほど精度が高いです。
画像の例だと、頭の部分の精度が低く、足周りに関しては点群が無いのでスキャンできていないですね。
下部のアイコンから各情報の表示/非表示ができます。
右下の範囲指定アイコンからスキャンする範囲を設定し、[Create Preview] ボタンからモデルを生成します。
撮影した枚数、回線速度にもよるとは思いますが、大体20分~1時間ほど処理に時間が掛かります。
4.Sketchfabにアップロード
モデルの生成が終わるとエクスポートできるようになります。
[Export to Sketchfab] からアップロードしましょう。初回はサインインが必要です。
5.モデルのダウンロード
アップロードが完了すると Sketchfab で確認できます。Draft としてアップされるので [Publish] ボタンから公開しましょう。
公開したモデルをクリックし、左下の [Download 3D Model] を押します。
どのフォーマットでダウンロードするかのウィンドウが出るので、USDZ を選びましょう。
(処理に少し時間が掛かるため、表示されていない場合は時間を空けてから再度確認しましょう。)
6.Unreal Engine プロジェクトにインポート
モデルをインポートするプロジェクトを開きます。
インポートする前に USD Importer プラグインを有効にし、エディターを再起動します。
先程ダウンロードしたモデルファイルをコンテンツブラウザ上にD&Dでインポートします。
フォルダを指定し、オプションを設定した後、右下の [Import] を押します。(オプションはデフォルトの設定でも問題ありません。)
指定したフォルダ下にメッシュ、マテリアル、テクスチャがインポートされます。
まとめ
現実のものを手軽に3Dモデル化できるのはなかなか衝撃がありますね。
撮影からUEにインポートするまでの所要時間としては、短くても1時間半くらいは掛かった感じです。
特にモデルの生成とSketchfabへのアップロードに時間が掛かります。
撮影もコツが必要で、距離や角度によって精度のブレが激しいです。
どうしても人力だとブレが出るのでしっかり精度重視でやりたい方は三脚などに端末を固定するのが良いかもしれません。
UE Version : 5.1.0-23058290