最近ははまっている フォトグラメトリー(Photogrammetry)について。前回からフォトグラメトリーソフト「3DF Zephyr」の チュートリアル#01 を解説しています。
今回はその続きで、最後にはチュートリアルには含まれていませんが、3Dモデル作成後にそれを Unity に取り込む方法も紹介します。
【詳細な点群認識とメッシュの作成】
次により詳細な点群の認識を始めます。
メニューより「Dense Point Cloud Generation」をクリックします。
Advanced > Dense Point Cloud Generation
Wizard画面が表示されますので、基本的に初期設定のまま「Next」をクリックします。
そして、最後に「Run」をクリックして実行を開始します。認識処理が終了すると結果が表示されますので「Finish」をクリック。
先ほどよりより細かい点群が表示されました。
次にメッシュの抽出を行います。
メニューより「Mesh Extraction」をクリックします。
メニューより「Mesh Extraction」をクリックします。
Advanced > Mesh Extraction
Wizard画面が表示されますので、基本的に初期設定のまま「Next」をクリックします。
そして、最後に「Run」をクリックして実行を開始します。認識処理が終了すると結果が表示されますので「Finish」をクリック。
先ほどの点群での表示でなくメッシュでの滑らかな表示になりました。
この時点で拡大してもとてもきれいです。
【Textureの作成】
次にTextureの作成を行います。
メニューより「Textured Mesh Generation」をクリックします。
Advanced > Textured Mesh Generation
Wizard画面が表示されますので、基本的に初期設定のまま「Next」をクリックします。
そして、最後に「Run」をクリックして実行を開始します。認識処理が終了すると結果が表示されますので「Finish」をクリック。
これで完成です。かなり美しい3Dモデルとなっています。
拡大して詳細を見ても写真の通りに出来上がってます。
【3Dモデルファイルの出力】
完成した 3Dデータを 3Dモデルのファイルにして他の環境やツールで使わなければフォトグラメトリーは意味がないかと思います。ここでは 3Dモデルでよく使われている Objファイル を出力してみます。
完成した 3Dデータを 3Dモデルのファイルにして他の環境やツールで使わなければフォトグラメトリーは意味がないかと思います。ここでは 3Dモデルでよく使われている Objファイル を出力してみます。
メニューより「Export Textured Mesh」をクリックします。
Export > Export Textured Mesh
Export formatで「Obj/Mtl」を選択します。そして、「Export」をクリック。
出力するフォルダとファイル名を指定します。そして、「Save」をクリック。
3DモデルのObjファイルが出力されました。
【出力した3DモデルをUnityで使用】
フォトグラメトリーは他の環境やツールで使ってこそ価値が出ます。この出力した 3Dモデルファイルの Objファイルも、今回は Unityに取り込み表示するところまでやってみましょう。
(この部分は 3Dflow社のチュートリアルには含まれていません。)
Unityで 3Dの New Projectを開始します。
先ほど出力した3Dモデルファイル(objファイル、mtlファイル、jpgファイル)をファイルエクスプローラーから Unityの Projectビューにドラッグアンドドロップします。
そして、Projectビュー内のモデルデータを Hierarchyビューにドラッグアンドドロップします。すると Sceneビュー上に3Dモデルが表示されました。
見ての通り色がかなり違ったものになっています。
Materialを変更します。Projectビューの「+」ボタンより Materialをクリック。
新規 Materialの Shaderを「Unlit/Texture」に変更します。そして、Base(RGB)の右側のボックスに Projectビューから Textureファイルをドラッグアンドドロップします。
そして、Hierarchyビュー上のオブジェクトファイルの配下にある子オブジェクトをクリック。Inspectorビュー上にある Mesh Rendererコンポーネントの Meterials: Element 0に今作成した Materialをドラッグアンドドロップします。
すると、実際の色で表示できました。
どうでしょう。フォトグラメトリーで作成した3Dモデルを、Unity内にゲームオブジェクトとしてインポートできました。これで、ゲームやAR, VRツール内のモデルとして使用できるわけです。
いかがでしたでしょうか。このフォトグラメトリー、たいへん簡単で利用価値もありますよね。特に私の興味のある ARでは必須な技術な気がします。今後もっと研究してこのブログでも解説をしていこうと思っています。
Sponsored Link