Blender単体で画像を3Dにモデリング


Blenderのみを使用し、ラスター画像から立体にし、モデリングします。
複数の写真からポリゴンにするフォトグラメトリではありません。
Blenderの使用バージョンは、3.1.0です。

:::note info
前提条件として、使用する画像の背景は、白など単色推奨です。
:::

:::note warn
背景色が単色でない場合は、事前に画像処理がほぼ必須です。
GIMPなどで前景抽出をすることで背景色を単色に出来ると思います。
:::

# ワークフロー

1. [画像用意](#画像用意)
2. [Blenderで画像インポート](#blenderで画像インポート)
3. [インポートした画像をグリースペンシル->パス->メッシュと変換](#インポートした画像をグリースペンシル-パス-メッシュと変換)
4. [メッシュをフィル、ソリッド化](#メッシュをフィルソリッド化)
5. [スカルプティング(Dyntopo ON)でポリゴン整形、モデリング](#スカルプティングでポリゴン整形モデリング)
6. [完成。あとは用途により、リトポロジーなど](#完成あとは用途によりリトポロジーなど)

# 画像用意

この記事では、
[https://img-garage.com/5445/](https://img-garage.com/5445/)
こちらより、魚(メジナ)画像をお借りしました。
<img width="400px" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2022388/cfebaa90-0654-7d24-49a6-06dcac9d3234.jpeg"/>

# Blenderで画像インポート

1. テンキー1で、真横からの平行投影にします。
2. 画像ファイルをBlenderの3Dビューポートへドラッグ&ドロップ

:::note info
もし追加されない場合は、
Shift + A から、画像 => 参照 で追加できます。
:::

![１.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2022388/9d4e7a7a-93d6-c0fb-e08d-d14488790289.jpeg)


# インポートした画像をグリースペンシル->パス->メッシュと変換

## グリースペンシルへ変換
追加された画像を選択し、上部メニューから、
オブジェクト => 変換 => グリースペンシルへ画像をトレース => OKを押し、
左下の**グリースペンシルへ画像をトレース**設定パネルを開きます。
![2.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2022388/715c6271-97a7-efbf-ff87-64fd8a96fb66.jpeg)
"**色のしきい値**"を、輪郭が途切れないぐらいまで上げて調整します。
この画像では、0.6ぐらいがよさそうです。

## パスへ変換
右上のツリービュー(アウトライナー)から、GPencilを選択し、
オブジェクト => 変換 => パス を実行します。
変換されたオブジェクト(Trace)がアウトライナーに追加されます。

以降、GPencilオブジェクトは邪魔になるので、Xキーで削除します。

## メッシュへ変換
Traceを選択状態にし、
オブジェクト => 変換 => メッシュ を実行します。

# メッシュをフィル、ソリッド化
## フィル
メッシュに変換したTraceを選択し、Tabキーを押し編集モードに入り、
不要な頂点を削除、フィル を実行します。

この魚の場合は、下記手順で実行しました。
1. 輪郭をAlt + クリック でループ選択し、
2. Ctrl + I で選択反転、
3. X => 頂点 で頂点を削除します。
4. A で全選択し、
5. F でフィルをします。 (頂点数によっては十秒以上かかるかもしれません。)

## ソリッド化
右下のモディファイアープロパティから、ソリッド化を追加します。
オフセットは"0"に設定し、幅を好みで設定します。

:::note warn
オフセットを0に設定し忘れると片側に押し出してしまうので、左右対称編集ができなくなってしまいます。
:::

![3.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2022388/7680b96c-1b61-0439-66d6-9f4d9fdca73e.jpeg)

3Dビューポート上でTabキーを押し、編集モードからオブジェクトモードに戻り、
モディファイアーのソリッド化を適用します。
![5.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2022388/721d90d9-2856-3f68-5388-bb2f69e7184c.jpeg)


# スカルプティングでポリゴン整形、モデリング
ソリッド化したオブジェクトを選択状態にし、上のタブから、Sculptingに切り替えます。

Dyntopoを有効にし、ディテールサイズを8px程に設定。
![7.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2022388/fac1c121-2e29-4d23-5e4a-6d6ab92d5648.jpeg)

ミラー設定をします。忘れやすいので注意!
~~この記事を書いているときも忘れました。なので、下の画像数枚はミラー設定がOnになっていません。~~
![13.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2022388/797636c1-e98a-9dfa-8e22-776c5eb21200.jpeg)


左のブラシリストでドローが選択されているのを確認してから、
Fキー押後に、マウス左右移動でブラシサイズを全体を覆うぐらいまでサイズ変更、
同じようにShift + F押後にマウス左右移動でブラシの強さを0に。
![8.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2022388/dd9601ac-5445-966d-c982-ca2e5b2bf9dd.jpeg)
ブラシが全体を覆った状態で、5回ほどクリックします。
![11.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2022388/dadfca09-fdb4-cf8d-f1ad-43830bfda71a.jpeg)
後はブラシサイズ、ブラシ強さを戻し、スカルプティングしていきます。
初めに、エッジをスムーズブラシでならしていくのが良いんじゃないかなと思います。
![14.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2022388/20ac2e7e-86c1-6759-5980-7ada247fec3e.jpeg)

# 完成。あとは用途により、リトポロジーなど

今回の記事での完成物です。雑なのは勘弁してください。
ヒレは別objでやる方がいいと思ったので、途中で無くしました。
![result.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2022388/820ca709-fd7d-53a6-3b90-ab1b8585d30b.jpeg)


### 雑記
Displacementでやるのもいいかと思いましたが、
- modifierのDisplacementからの場合、画像はカラーランプできない???
- shaderのDisplacementの場合、シェーダー後の頂点をオブジェクトへの適用方法がわからない。

わからなかったです。