概要
7D1Mにてフォトグラメトリを使って様々なメシを撮りましたが
そのままの状態では余計なものがテクスチャの中に入っていたり
ローポリではないので、ローポリ化&テクスチャを綺麗にするワークフローを紹介します。
前提
iPhone (LiDARセンサーつきのもの)
Scaniverse: メッシュで撮影したもの(Splatはまた別の技術になります)
OBJ 形式でiPhoneから出力する(テクスチャがいいらしい?)
Blenderで作業しますので、出力形式は自由です。
手順
Blenderから OBJ形式で対象のモデルをインポートします。
ここでは「Inari」を呼び出します。
なお名前は念のためScaniverse上で保存する際には英語名を推奨します。

スキャン自体についてのコツはここではあまり語りませんが
- 平べったい皿がクリッピングしやすいです
- ぐるっと180度とらないと後ろがボケボケになりがちです
- メッシュが推量でのびのびになりがち
- 下方面は皿でごまかしましょう

ポリゴン数がいなりずし一個で15000はかなり多いです。3000以下にしたいところ。
またなにもしていない状態のUVは以下となっており無駄が多く、余計なものまであるわりに本体のいなりにUVが十分に割かれてなくて嬉しくないです。
これを最適化していきます。

まず元のメッシュをコピペして残しておきましょう。
これは後で利用するので消さないようにしておきます。

コピペしたものをローポリ化・UVを綺麗にするモデルにします。
移動は行わず、元のメッシュと完全に重なる形で作業します。
ここがずれるとうまくいかないので気をつけましょう。

皿など不要なものを削除したら、マテリアルを編集します。

マテリアルの準備ができたら、UV展開をしなおします。


その後、Layout -> Shadingタブに移動します。


画像の新規作成で、転写するための画像を準備しておきます。
テクスチャサイズはお好みですが、基本は2048でいいと思います。
なぜなら元のScaniverseの解像度がそこまで高くない気がするので。
アルファのチェックを外しておきましょう。一応。

作成後は、ほかを選ばず選択したままにしておきましょう。
次にベイク設定を行います。
ベイクはレンダリングをCyclesにする必要があります。
設定後、ベイク項目がありますので、下記画像のように選択してみてください。
ベイクタイプはディフューズで、照明の効果は必要ないためカラーだけでOKです。

設定完了後、ハイポリ -> ローポリの順にCtrlを押しながらクリックして選択します。
選択したら、ベイクを押しましょう。

うまくいったと思ったらShadingで試しに見てみましょう。
生成されたテクスチャを実際のシェーダーのカラーにつないで見てみます。
ここで大丈夫なら保存していきましょう。

まず画像を保存しておきます。ベイク結果は自動保存されないので手動で保存します。

モデル自体もFBXで出力したりすればUnityに持っていけば利用可能です。
下側のメッシュはないので自身でお皿などを生成したり、
利用することをおすすめします。
その後、モデルのポリゴン数削減ですが、シンプルにモディファイアのデシメートを利用しましょう。UV展開の形を損なわずに削減できます。


こちらは1000ポリぐらいのいなり寿司ですが、全然リアルかと思います。
ノーマルマップもないですが、十分かと。


あとはモディファイアのちょうどいい比率を選んで終了です。お疲れ様でした。