2022年7月19日火曜日

メモ 縄文土器3Dモデルの塗色方法

 Memo: How to paint the Jomon pottery 3D model


When considering the meaning of the Jomon pottery pattern, it is tempting to color the pattern components to classify and identify them for observation. In order to meet my learning needs, I organized and wrote down how to paint the Jomon pottery 3D model. I tried using Blender and Photoshop.


縄文土器文様の意味について検討する際、文様構成要素に色を塗って分類識別して観察したくなります。そうした学習上の自分のニーズを満たすために、縄文土器3Dモデルに塗色する方法を整理してメモしました。あくまでも3D技術入門者としてのメモであり、より高等技術を習得すればより効率的で正確な作業方法があると予感します。

0 はじめに

フォトグラメトリソフト3DF Zephyr Liteで3Dモデルを作成し、Wabefront(.obj)データをエクスポートした状況を前提とします。

縄文土器3Dモデルに関して次の3つのファイルが整備された状況です。

mtlファイル

objファイル

pngファイル(テクスチャ画像をpngファイルとした場合)

使用するソフトは3DF Zephyr Lite、Blender、Photoshop(あるいはillustratorなど)です。

以下技術難易度順に4つの方法に分けてメモします。

1 Blenderによる塗色 その1 レイヤー無し

2 Blenderによる塗色 その2 レイヤー有り

3 Photoshop等によるUV展開再生成テクスチャ画像の塗色

4 3と2の合成

1 Blenderによる塗色 その1 レイヤー無し

準備

・pngファイルのコピーを保存しておく。(塗色結果がpngファイルに上書きされるため、コピーを残しておかないと塗色前3Dモデルの復元が出来なくなる。)

手順

1-1 3DモデルをBlenderにインポートします。

1-2 ワークスペースでテクスチャペイントを選択し塗色します。

・色を設定する。

・ブレントモードを設定する(乗算を利用すると元のテクスチャと色の双方を表示できる)。

・ブラシの半径、強さを設定する。

・塗りを失敗した場合、その場でctrl+zで戻る。

感想

・後から消去・修正できないので不便。

・マウスを持つ手が震えると線も震えるのでとても原始的描画方法。精細な作業は困難。

・線分や鋭角のない大柄図形だけの塗色なら簡易的方法として有用です。


Blender テクスチャペイントでの塗色の様子

1-3 画像保存

画像→画像保存する。テクスチャ画像に塗色結果が上書きされます。

塗色結果が上書きされたテクスチャ画像ができたので作業は完了したことになります。Blenderは特段に保存する必要はなく、終了します。

Blenderによる塗色(レイヤ無し)による作業結果例

出産文土器(北杜市海道前C遺跡) 観察記録3Dモデル(動物文塗色)

2 Blenderによる塗色 その2 レイヤー有り

準備

・pngファイル(テクスチャ画像ファイル)の大きさをPhotoshop等で調べておきます。(pixel単位)

手順

2-1 3DモデルをBlenderにインポートします。

2-2 次のノードネットワークを作成します。


最初に作成するノードネットワーク

2-3 画像テクスチャを追加しペイント書き込み用設定をします。

新規→名前記入、幅と高さの数値を記入(テクスチャ画像ファイルと同じ数値)、カラーで適当な色を選んでからAを0にする→OK

2-4 追加した画像テクスチャをマッピングとミックスにつなげます。


完成したノードネットワーク

2-3 ワークスペースのテクスチャペイントでペイントを行います。

・色のミックスモードは「ミックス」でのみペイント可能です。

・色のミックスモードを「アルファを消去」にするとペイント部分を消去できます。


作業風景

2-4 画像保存

画像→画像保存でペイントした画像を保存します。Blenderファイルも保存します。(後に修正追加がしやすい。)

2-5 画像調整

元3Dモデルのテクスチャ画像ファイルとペイントした画像ファイルをPhotoshopに取り込み、乗算で重ねるなどして調整画像をつくり、3Dモデルの画像ファイルとします。

感想

・正確で精緻な作業が出来ない点で2と同じですが、随時使える消去手段があるのと、塗色が別レイヤになるので少しだけ使いやすくなります。

・乗算で作業できないので、場合によっては2より使い勝手が悪くなる場合もあります。

この方法を試行する上で参考としたページ

Blenderの標準機能だけでテクスチャをレイヤーの様に重ねてペイントで消したり描いたり調整をしやすくする方法

3 Photoshop等によるUV展開再生成テクスチャ画像の塗色

第1ステップ

3DF Zephyr Liteで作成した3Dモデル(Wabefront(.obj)ファイル)をBlenderにインポートします。

Blenderで土器形状に応じて必要なシームを入れてUV展開します。(双眼突起がある場合や把手形状が複雑な場合は、シームの入れ方に工夫が必要となります。)

BlenderからWabefront(.obj)をエクスポートします。(Blenderの保存は特段必要ありません。)

そのWabefront(.obj)ファイルを3DF Zephyr Liteに「UVマップ付メッシュを入力」で入力します。

3DF Zephyr LiteからWabefront(.obj)をエクスポートします。そのWabefront(.obj)ファイルのテクスチャ画像ファイルはUV展開に適合した再生成画像となります。


当初テクスチャ画像とUV展開適合再生成テクスチャ画像

詳しい説明記事 2022.05.26記事「3Dモデル直接描画方法

3DF Zephyrの関連チュートリアル

Unwrapping a texture generated by 3DF Zephyr

第2ステップ

第1ステップで作成した再生成テクスチャ画像をPhotoshop等で編集(塗色や線分記入など)し、pngファイルとして出力します。この画像が塗色したテクスチャ画像となります。


再生成テクスチャ画像編集例

同上例の3Dモデル

資料 顔面把手付大深鉢(伊那市月見松遺跡) 観察記録3Dモデル (胴部動物文ゾーニング検討)


同上例のGigaMesh Software Framework展開

感想

・2次元図面をPhotoshopで編集するのですから正確精緻で多様な表現が可能になります。作業も効率的にできます。文字を3Dモデル表面に書き込むことも可能です。

・3DF Zephyr Liteを使う自分の場合、縄文土器の塗色はこの方法をメインにすることにします。

・画像編集をPhotoshopではなく、illustratorで作業した際に、書き出しpngファイルの大きさが当初ファイルの大きさと微妙に異なり、一部ソフトでエラーとなりました。(ファイルの大きさを直したところエラーは無くなりました。)

illustrator作業ファイルでエラーの生まれたソフト

・MeshLab

・GigaMesh Software Framework

illustrator作業ファイルでエラーが生まれなかったソフト

・3DF Zephyr Lite

・Blender

・Sketchfab

4 3と2の合成

UV展開適合再生成画像ファイルでも、双眼突起や複雑形状把手部分では大きなゆがみが生まれます。その場合、許容できるゆがみ部分では3による作業を行い、許容できないほどの極端なゆがみ部分では2の作業を行い、その双方を合体することが考えられます。

5 感想

地図や空中写真から様々な情報を読み取ることができます。通常、それらの情報は地図や空中写真に描き込み、新たな色別分布図や加色画像にして情報を定着させます。

一方、縄文土器に関して、その文様を文字で詳しく記述することはあります。しかし観察して得た情報を3Dモデルや展開モデルに描き込んで判りやすく示したものはほとんど見かけません。専門家同士では必要としないのかもしれません。しかし、自分のように一般市民として縄文土器に興味を持つと、どうしても3Dモデルや展開モデルに観察情報を描き込んで学習過程として記録したくなります。そのような自分の学習ニーズに即して、3Dモデルに描き込みする方法に興味を持っています。最近その方法の入門的技術を獲得できましたので、メモした次第です。



0 件のコメント:

コメントを投稿