QiitaのBlender Advent Calendar 2021 の3日目として投稿します。
https://qiita.com/advent-calendar/2021/blender
BlenderのUV操作に便利な**TexTools**というアドオンがあり、
UV展開やベイク機能での利用の話題は度々見かけますし、私も非常に重宝しています。
そのアドオンの機能の一つで UVテクスチャのようにオブジェクトを変形して貼り付ける機能があります。
アドオンの紹介で軽く触れている記事はあるものの、細かい使い方を紹介しているものがなく
検索で見つけるのも難しいようなので記事にしてみます
TexTools 1.4.4 時点での機能になります
UVMeshの作成
UVを元にした変形をするための形状を用意します
変形のベースになる形状は先にUV展開してあるものである必要があります
ベース形状を選択した状態で TexToolsのMeshTexture の項目にある Create UV Mesh のボタンを押すと
UVの形状と同じ形をした「UV_mesh (ベース形状の名前)」のメッシュが3Dビュー上の3Dカーソルの位置に作成されます
この形状はシェイプキーでベース形状とUV展開された形状の間を変形するようになっていて
TexToolsのラップのスライダの項目で変形度合いを制御できるようになっています。
これだけではどう使うか分かりませんね 続けて設定をしていきます
変形対象の形状の指定
UV_Meshのすぐそばに 変形対象のオブジェクトを置いて
UV_Mesh 変形対象のオブジェクト 両方を選択した状態にします
ここで Warpボタンを押すと
よく分からない形ですね
UV_mesh の形状を非表示にしてみます
変形対象のオブジェクトが表面に張り付いていると思います。
これは 変形対象のオブジェクトが**サーフェイス変形(SurfaceDeform)**のモディファイアでUV_meshの変形に合わせて変形されている状態になります。
ただ、ちょっと形が歪んでいますね。
これは もっと滑らかな形状で綺麗な変形をさせるための設定のようで
ローポリゴンの角度の急な形状ではこうなるようです。
変形の再設定
変形後の形状が意図した感じと違った場合の
アドオンで自動設定されていたものを再設定してみます
まず 変形状態を解除するために MeshTexture項目のラップの数値を0にします
次にUV_mesh形状についているSolidifyモディファイアをビューとレンダリングそれぞれで使用をオフにします。
その後 変形対象のオブジェクトを選択してモディファイアプロパティのSurfaceDeformのバインド解除の解除のボタンを押します
このバインドとは サーフェイス変形で変形の基準になるメッシュの状態を記録させるためのものです。
解除前のキャプチャではアドオンで設定されたUV_mesh形状のSolidifyモディファイアがオフになったために
記録されたものとポリゴン数が異なるのでエラーが表示されていますね
バインド解除ボタンを押した後に ボタンはバインドの表示になるので 再度同じボタンを押しましょう。
最後に ラップの数値を1.0に戻すと変形状態に戻ります
張り付けるオブジェクトの調整
サーフェイス変形での変形は ターゲットで指定したメッシュの頂点の移動を元に計算するものですが
変形対象のメッシュのターゲットのメッシュから外れた場所にある部分は余分になってしまいます。
この範囲外のメッシュを削除するのが トリム機能です。
UV_mesh形状と変形対象のメッシュを選択した状態でトリムボタンを押すと変形対象のメッシュにTrim UVという名前でブーリアンモディファイアが作成されます
アドオンの設定ミスなのか ブーリアンの設定が「差分」になっているので「交差」に変更して
Collapase Trimボタンを押すと ブーリアンが適応されて余分な部分が削除されます。
メッシュを変更するので貼り付け形状はコピーするなどして残しておいた方がいいでしょう。
ちょっと面倒な設定が多いですが
何かの参考になればと思います。