2022年5月26日木曜日

3Dモデル直接描画方法

 3D model direct drawing method


I wrote down how to draw lines and colors directly on the texture image of a 3D model created by photogrammetry. Use 3DF Zephyr Lite, Blender and image editing software (Photoshop, etc.).


フォトグラメトリで作成した3Dモデルのテクスチャ画像に線や色を直接描きこみする方法をメモしました。3DF Zephyr LiteとBlenderと画像編集ソフト(Photoshopなど)を使います。

1 3DF Zephyr Liteによる3Dモデル作成


3DF Zephyr Liteによる3Dモデル作成の様子

この例ではショーケースの端に展示されている土器をガラス面越し撮影して114枚の写真から3Dモデルを結像しています。この状態の3DF Zephyr LiteファイルをAファイルとします。

2 3DF Zephyr LiteからWabefront(.obj)ファイルのエクスポート

AファイルからWabefront(.obj)ファイルをエクスポートします。このWabefront(.obj)ファイルをBファイル(obj,mtl,png)とします。


Bファイルのテクスチャ画像

このテクスチャ画像に線や色を描き込むことは不可能です。(全体の色調を変えるなど画面全体の一括処理は可能です。)

3 BファイルをBlenderにインポート

BファイルをBlenderにインポートします。

インポートする際、トランスフォームは前方は「Xが前方」、上は「Zが上」にします。


BファイルをBlenderにインポートした様子

注 インポートしてからオブジェクトの移動は厳禁です。

4 BlenderでUV展開

BlenderにインポートしたBファイルをUV展開します。


インポートした直後のBファイルのUVエディター画面


UV展開したBファイルのUVエディター画面

(この例ではシームを使っていませんが、3Dモデルの状況によってシームを入れるとより合理的なUV展開ができます。)

5 BlenderからWabefront(.obj)ファイルをエクスポート

BlenderからWabefront(.obj)ファイルをエクスポートします。このWabefront(.obj)ファイルをCファイル(obj,mtl,png)とします。

6 CファイルをAファイルに入力

CファイルをAファイルに入力→「UVマップ付メッシュを入力」します。


3DF Zephyr Liteの「UVマップ付メッシュを入力」画面

(この画面の注書き:このダイアログでは外部メッシュを既知のUVマップ付で、カレントワークスペースに入力でき、それにテクスチャ付けできます。メッシュはワークスペースと同じ座標系上にないといけないことに注意してください。)

ファイルの選択だけで、他はデフォルトです。

Cファイルに対応する新しいテクスチャメッシュが生成します。

7 3DF Zephyr LiteからWabefront(.obj)ファイルのエクスポート

Cファイルに対応する新しいテクスチャメッシュをWabefront(.obj)ファイルでエクスポートします。このWabefront(.obj)ファイルをDファイル(obj,mtl,png)とします。


Dファイルのテクスチャ画像

8 Dファイルのテクスチャ画像の編集

Dファイルのテクスチャ画像をPhotoshopなどで編集加工します。


Photoshopで編集加工したDファイルのテクスチャ画像

この編集加工テクスチャ画像を含むWabefront(.obj)ファイルをEファイル(obj,mtl,png)とします。このEファイルが完成品です。

9 Eファイルの3DF Zephyr Lite表示


3DF Zephyr LiteにEファイルをロードした様子

10 注 Blenderで位置を移動しない

3でBlenderにBファイルをインポートしますが、この時objectを移動すると6で次のような画面になり座標がずれてしまい操作が失敗となります。


失敗画面 BlenderでBファイルを移動(objectを原点に移動)した場合の6の画面(「UV付メッシュを入力」した画面)

この失敗経験から3DF Zephyr Liteの空間座標とBlenderの空間座標が同じであることを知りました。

この失敗の原因がわかるまで半日かかりました。

11 3DF Zephyrチュートリアル

Unwrapping a texture generated by 3DF Zephyr



0 件のコメント:

コメントを投稿