バーチャルアートミュージアムを作る(7)フォトグラメトリ - 3DF Zephyrで作ったモデルの修正

Craneです。また間隔が空いてしまいました。
今回は3DF Zephyrで作ったモデルの修正・最適化について記載します。

余計な部分を削除

前回、テクスチャ付メッシュ作成まで済ませていました。
 

まずは地面を除去します。ポリラインで対象領域を選択して、Deleteキーで削除。

 

 

 

 

 

 

 

 

 

 

ポリラインで削除範囲を選択
Delキーで削除

あとはひたすらこれを繰り返します。

きれいに整った

次に、一旦テクスチャ付きメッシュを出力します。
後ほどUnityで読み込みたいため、フォーマットをOjb/Mtlにします。

出力→テクスチャ付メッシュを出力を選択

さて、出力されたファイルですが、32MBと、容量が大きいです。
ちなみにメッシュの頂点数は、約22万です。このままだと大きすぎます。

容量が32MBと大きい

頂点数を減らしてテクスチャ付きメッシュを出力

そこで、再度「テクスチャ付メッシュの作成」ウィザードで、「アドバンスド」を選択します。

最大頂点の数値を変更(下げる)し、モデルの形状を維持できるか試します。

15000頂点。見た目は大丈夫そう

できたモデルが上記の写真です。ちなみにobjのサイズは3MBくらいです。
ちょっと大きいですが、まぁこれくらいでもUnityで動かす分にはそれほど支障はありません。
とはいえもう少し減らしたいです。

モデルの修正・編集

Blenderで編集します。Blenderは高機能な3D統合環境フリーソフトです。
以下サイトからダウンロードできます。ただこれ、操作が難しくなかなか私は使いこなせていませんが・・・。
Download — blender.org

Blenderを立ち上げて、objをインポートします。なお、デフォルトで立方体が表示されているかと思いますがそれは削除しましょう。

デフォルトで表示される立方体は、右クリック→削除 で削除します

 

読み込んだobjファイルが表示されます。

「Shading」Windowに切り替えて見てみます。

よく見てみると、形状が歪んでいるのが分かります。
これは、写真から3Dモデルを生成した際に、形状を正しく認識できていなかったり、メッシュの頂点数を削減した際に
頂点が入り組んでしまっている部分になります。

また、3DF ZephyrとBlenderでは3DのXYZ軸が若干異なっており、モデルが横倒しに表示されます。
右のアイコン一覧から「オブジェクトプロパティ」選択すると、「トランスフォーム」欄で回転角度を変えられます。
X軸が90℃になっていますが、これを0℃に変えると直ります。

なお、3DF Zephyr Free版だと、修正したモデルを3DF Zephyrに再インポートすることができないため、
Blenderで破綻のないレベルで修正して頂点数を減らしていきます。
Light版(有償)だと、Blenderで修正したモデルを再インポートし、そこから
「テクスチャ付メッシュを出力」することで、修正したモデルに対し再度テクスチャを貼り付けることができるため
見た目もより自然にできます。
ただし、その場合は、Blender側で角度などを修正してしまうと、3DF Zephyrに再度取り込んだ時に角度がずれてしまうため
その点の配慮が必要となります。

 

さて、編集モードに変更し、破綻している頂点を統合して修正します。

不整合を起こしている頂点を選択してマージする

頂点をマージしました。外観を確認します。大丈夫そうですね。
他にも頂点の位置を動かしたり、統合したりして修正していきます。

 

 

 

 

 

 

 

外観が一通りきれいになったら、次に、頂点数を削減します。

「編集モード」で台座など精度が低くても良い部分の頂点を選択します。

顔などは、なるべく精彩にしたいため、一旦そのまま残します。
「メッシュ」→ 「クリーンアップ」→「形状のポリゴン数削減」を選択します。
「形状のポリゴン数削減」は、なるべく形を保ったまま頂点を減らす処理になります。

頂点を選択していく
形状のポリゴン数削減を選択

「比率」は、現状を1とした場合に選択部分をどれくらいのポリゴン数にするかを示すものです。
あまり低くしすぎると、見た目がおかしくなりますのでバランス良い値を模索します。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

→ 適用後のモデルです。9834頂点。ちょっと多いですが、まぁ良しとします。

objファイルをエクスポートします。

 

 

 

 

 

 

 

 

 

objファイルの容量は2MB弱になりました。

 

 

 

 

 

少しでも参考になれば幸いです。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です