Fusion360で作った3DオブジェクトをSubstance Painterに取り込んでリアルなテクスチャを作る

# 全体の流れ
Substance painterはUVマップがないと、うまくペイントできないようです。UVマップを作成する必要がありますが、Fusion360もSubstance painterもUVマップを作成できません。UVマップを作成するフリーソフト「Roadkill」を使って、UVマップを作成します。

**1. Fusion360で3Dオブジェクトを作成し、obj形式でエクスポート**
※Fusion360をUnityでインポートすると、100倍のサイズになってしまうため、Fusion360では本来のサイズの1/100のサイズで3Dデータを作ってください。
**2. Roadkillで取り込み、UVマップを作成し、obj形式で保存** <- この投稿で取り上げる内容
**3. Substance painterで取り込んで、テクスチャを作成** <- この投稿で取り上げる内容

#Roadkillで取り込み、UVマップを作成し、obj形式で保存
## Roadkill UV Tool
ダウンロード方法と使い方
https://mononoco.com/creative-design/3dsmax/roadkill-uv-tool

公式ページ
http://www.pullin-shapes.co.uk/page6.htm
Roadkill 1.1 Tested on Maya 2017 running on Windows 10　をダウンロードします。

obj形式の3Dオブジェクトを読み込みます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/262601/e1a49514-a44c-d223-5100-7357c7b27818.png)

Eボタンを押して編集モードにします。カットしたい線を選択し、「Cut selected」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/262601/8e7f03a3-05ca-5dbd-80a4-4b6805374647.png)

UVカットの出来上がりです。保存します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/262601/bf5722df-2d2c-e1bc-42e9-e438cdf50bee.png)


# Substance painterで取り込んで、テクスチャを作成
## Substanceの基礎知識

### Substanceの種類
Substanceは、Allegorithmic社が提供するソフト群で、3D形状にペイントするツールです。
Substanceはいろいろなソフトがありますが、人気の高いのが以下の3つです。

**Substance Painter**
レイヤーを重ねて、3Dでテクスチャを作成し、画像ファイルを出力するソフト。3D版フォトショップです。今回取り上げるのは、このソフトです。Indie版で月額19.9ドルです。

**Substance Designer**
ノードをつなぎ合わせて、3Dのテクスチャを作成し、画像ファイルを出力するソフト。加算や乗算などを組み合わせる仕組みのため、難易度は高いです。

**Bitmap2Material**
1枚のテクスチャ画像をもとに上下左右にシームレスに繋げられるタイリング画像を作成し、画像ファイルを出力するソフト。


### 用語

- **UVマップ**とは、3次元のメッシュを、2次元に展開した画像のこと。UVの「U」はテクスチャの横座標、「V」は縦座標を表します。
- **バンプマップ**とは、テクスチャの凹凸を表すグレースケールの画像のこと。高さ情報しか保持できません。2000年代以降はバンプマップよりも高度なノーマルマップが一般的に使われています。
- **ノーマルマップ（法線マップ）**とは、テクスチャの凹凸を表す画像のこと。x・y・zの各方向の凹凸情報を保持しています。
- **法線**とは、3Dオブジェクトの面や頂点から垂直に伸びる直線のこと。
- **アンビエント オクルージョン（Ambient Occlusion）**とは、ライトの当たり具合を表現するレンダリング手法のこと。直訳すると「周囲の遮蔽」。比較的少ない計算量で、リアルな影を表現できます。部分的にライトが当たらないようするなどの設定が可能です。
- **AOマップ**とは、アンビエント オクルージョン マップの略で、ライトの当たり具合を表す画像のことです。
- **シェーダー**とは、GPUで行う陰影処理プログラムのことです。


### マウス操作
- ALt + 左ドラッグ：　カメラの回転
- ALt + 右ドラッグ：　カメラのズーム
- Alt + Ctrl + 左ドラッグ：　カメラのパン（カメラの上下左右移動）
- マウスホイール：　カメラのズーム


### テクスチャのチャンネル
テクスチャをリアルにするために下の5つの要素を設定します。これらの要素をチャンネルといいます。

- **Base Color**：　色。RGBの色情報を指定します。Albedoと同義。
- **Height**：　高さ。凹凸を表す情報。-1から+1の範囲で指定します。
- **Roughness**：　粗さ。ざらつきを表す情報。値を大きくするとざらつき、反射しにくくなります。0から1の範囲で指定します。Metallicとセットで指定します。
- **Metallic**：　金属感。値を大きくすると、鏡のように反射します。0から1の範囲で指定します。
Roughnessを0、Metallicを1にすると鏡のような完全な反射になります。
Roughnessを1、Metallicを0にすると反射せず粘土のような質感になります。
金属感を強めると鏡面反射に色がつきます。金属感を弱めると鏡面反射に色がつきません。
- **Normal**：　法線。凹凸を表す情報。法線とは凹凸情報を表した画像のことで、出っ張っている場所は青が強くなります。法線は塗りつぶしレイヤで指定することが多いです。

### Substance painterの初期設定（言語設定）
中途半端に日本語が混じっていてわかりにくいため、英語表示に変えます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/262601/c745f854-4a84-8b0e-371e-5a32074fcec1.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/262601/53b10426-feda-13cd-7838-d74465d69441.png)



## Substance painterで取り込んで、テクスチャを作成する流れ

### 3Dオブジェクトの取り込み
File -> New を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/262601/c1f190b2-8d35-076a-36c7-2f69ea555306.png)

Selectを押し、取り込みたい3Dデータを選択し、OKを押します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/262601/e68534b4-4ecb-378c-5a20-1ef6fb86eed3.png)

LAYERフィールドの Add a fill layer を押します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/262601/04a92135-fcbd-5cbf-72d1-c3cf3c645067.png)

PROPERTIESフィールドの Material modeを押し、好みのマテリアルを選択します。
[image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/262601/cb8ee4e6-75e6-3568-5af4-11a46696f59f.png)

マテリアルの角度を調節します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/262601/9469d9c4-d69b-d29e-46ce-7011bce95ba0.png)

ノーマルマップを押すと、より立体的になります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/262601/384ac101-bae1-a48a-7673-7ccdd036e019.png)