Blenderのサーフェス変形(Surface Deform)とシュリンクラップ(Shrinkwrap)というモディファイア―(Modifier)を使用して、厚さがあるメッシュを別のメッシュの表面に貼り付ける方法を紹介します。
厚さがないメッシュを貼り付けたい場合は、下記の記事で紹介をしているシュリンクラップ(Shrinkwrap)というモディファイア―(Modifier)のみを使用します。
1 厚さがあるメッシュを別のメッシュの表面に貼り付ける方法
準備
立方体(Cube)から作成したメッシュ(=立方体の大きさを変更しただけのメッシュ)を準備して、UV球(UV Sphere)の表面に貼り付けていきます(画像1参照)。
手順1
別のオブジェクトとして平面(Plane)を追加して、立方体から作成したメッシュの底の部分に配置して、大きさを同じくらいに合わせます(画像2参照)。
横から見ると画像3の矢印が追加した平面です。
平面の位置と大きさはおおよそで問題ありませんが、極端に違うときれいに貼り付かなくなります。
平面を選択した状態で、プロパティ(Properties)>モディファイア(Modifier)でモディファイア―を追加(Add Modifier)をクリックしてサブディビジョンサーフェス(Subdivision Surface)を追加します。シンプル(Simple)を選択して、ビューポートのレベル(Levels Viewport)は4に設定します(画像4参照)。
手順2
立方体から作成したメッシュを選択して、プロパティ(Properties)>モディファイア(Modifier)でモディファイア―を追加(Add Modifier)をクリックしてサブディビジョンサーフェス(Subdivision Surface)を追加します。シンプル(Simple)を選択して、ビューポートのレベル(Levels Viewport)は4に設定します(画像5参照)。
さらにサーフェス変形(Surface Deform)を追加して、ターゲット(Target)に手順1で追加した平面を指定して、バインド(Bind)をクリックします(画像6参照)。
バインド(Bind)をクリックしたら、バインド解除(Unbind)と表示が変わることを確認してください(頂点数が多い場合は表示が切り替わるまで時間がかかる場合もあります)。
ここまで出来たら平面を選択して編集モード(Edit Mode)に切り替えて、平面の頂点を動かしたときに、サーフェス変形(Surface Deform)の機能によって立方体から作成したメッシュも追従して動くことを確認してください(画像7参照)。
確認のために平面の頂点の位置を変更してしまった場合は元の位置に戻しておいてください。
手順3
平面をオブジェクトモード(Object Mode)に戻したら、平面を選択したまま、プロパティ(Properties)>モディファイア(Modifier)でモディファイア―を追加(Add Modifier)をクリックしてシュリンクラップ(Shrinkwrap)を追加して、ターゲット(Target)にUV球を指定します(画像3参照)。
ラップ方法(Wrap Method)でプロジェクト(Project)を選択して、座標軸(Axis)の正方向(Positive)のチェックを外して負(Negative)にチェックを入れます。
シュリンクラップ(Shrinkwrap)の機能によって平面がUV球に貼り付き、サーフェス変形(Surface Deform)の機能によって平面の形状の変化に追従して立方体から作成したメッシュも変形することで、画像9のように厚さがあるメッシュをUV球の表面に貼り付ける(=貼り付けたような形状に変化する)ことができました。
立方体から作成したメッシュの形状を確定したい場合は、サブディビジョンサーフェス(Subdivision Surface)⇒サーフェス変形(Surface Deform)の順番で適用(Apply)してください。
2 補足
2.1 設定を変更した場合
追加したモディファイア―(Modifier)の設定を変更した場合などは、サーフェス変形(Surface Deform)のバインド解除(Unbind)を一度クリックして、再度バインド(Bind)をクリックし直してください。
上記の操作をしないと、形状がおかしくなる場合があります。
2.2 頂点数について
貼り付けたい厚さがあるメッシュの頂点数が少ない場合は、サブディビジョンサーフェス(Subdivision Surface)の他にループカット(Loop Cut)やナイフ投影(Knife Project)などを使用して頂点数を増やします。
すでに頂点数が多い場合は、増やす必要がない場合もあると思います。
ナイフ投影(Knife Project)を使用する場合については下記の記事の「3.5 N-gonのメッシュにループカット(Loop Cut)を追加する方法」で紹介しています。
2.3 貼り付けるメッシュを変形させる必要がない場合
厚さがあるメッシュを別のメッシュの表面に貼り付ける場合に、この記事で紹介してきたように貼り付けるメッシュを変形させる必要がない場合は、スナップ(Snap)の機能を使用します。
貼り付けたいメッシュに対してスナップ(Snap)を画像10のように設定します。
以上、Blenderの「厚さがあるメッシュを別のメッシュの表面に貼り付ける方法」でした。
コメント