MAYA2022で橋脚や建造物を、複雑な地形に沿って建たせるなど、面の形状を接地するメッシュに沿わせるモデリングをしたい場合は、コンポーネント タグ(Component Tags)を使うと便利。
この記事では、[MAYA2022]のコンポーネント タグ(Component Tags)を使い、モデルの底面を接地するメッシュモデルの形状に沿わせるモデリング方法を紹介します。
この方法を使うと、「複雑な地形の上に建造物を建てる際の接地面のモデリング」や、「結果を確認しながら調整できるブーリアン的な使い方」が出来て便利なの、是非参考にしてみてください。
![]() |
|
コンポーネント タグ(Component Tags)
コンポーネント タグ(Component Tags)には、ジオメトリ内の選択したコンポーネント(面やエッジ、頂点など)に名前を付けて分割できます。
■コンポーネント タグ(Component Tags)の用途
・ジオメトリの特定の領域にのみデフォーマを適用する
・ジオメトリの特定の領域に対して編集可能なデフォメーション減衰エフェクトを作成する
・コンポーネント リストに入力するルックアップ テーブルを自動的に作成する
![]() |
|
コンポーネントタグを使って面の形状を接地するメッシュに沿わせる

円柱モデルの底面を接地するメッシュの形状に沿わせる手順は、
1)円柱モデルの底面をコンポーネント タグ(Component Tags)に追加
2)円柱モデルと接地するメッシュモデル対し、「シュリンクラップ(shrinkWrap)」を適用
3)接地するメッシュモデルを移動
接地面をコンポーネント タグを割り当てる
まずは、円柱モデルの底面をコンポーネント タグ(Component Tags)に追加します。
フェース(face)選択モードにして円柱モデルの底面を選択

アトリビュート エディタ(Attribute Editor)の「Shape」タブを選択し、「Component Tags」を開きます。
右上の「+」をクリックしてコンポーネント タグを追加。
追加したコンポーネント タグを右クリックし、メニューから「Rename」を選択、名前を変更します。

今回の例では、追加したコンポーネント タグの名前を「bottom_faces」と変更しました。

コンポーネントに「シュリンクラップ(shrinkWrap)」を適用
シュリンクラップ(shrinkWrap)は、オブジェクトの形状に沿って布をピッタリ覆いかぶせるモデリングをする場合などにとても便利な機能ですが、通常の方法では、布モデル全体が、ターゲットの形状に沿って覆いかぶさってしまうので、布のようなソフトな素材の場合には有効ですが、建造物などのハードなモデルには不向き。
しかし、ターゲットの形状に沿う箇所をコンポーネント タグ(Component Tags)に割り当てれば、シュリンクラップ(shrinkWrap)が適用されるコンポーネントを限定できるので、ハードなモデルでも使えるようになります。
オブジェクト選択モードに変更し、先に円柱、次に地面のメッシュオブジェクトを選択。
そしてメニューから、デフォーム(Deform) > シュリンクラップ(shrinkWrap) をクリックします。

シュリンクラップ(shrinkWrap)を実行すると円柱モデル全体が、地面の形状に沿って潰れた状態になりました。

「シュリンクラップ(shrinkWrap)」を適用したコンポーネントをメッシュの形状に沿わせる
地面の形状に沿って潰れた状態の円柱モデルですが、シュリンクラップ(shrinkWrap) が適用される箇所を、コンポーネント タグ(Component Tags)に追加した円柱の底面に限定します。
アトリビュート エディタ(Attribute Editor)の[shrinkWrap]タブを選択。
「Input Attributes」を開いて、[component Tag]の項目を追加したコンポーネント タグの名前「bottom_faces」に変更します。
![アトリビュート エディタ(Attribute Editor)の[shrinkWrap]タブをクリック](https://i0.wp.com/liquidjumper.com/Home/wp-content/uploads/2021/08/maya2022_component-tags_shrink-wrap_00.jpg?resize=459%2C663&ssl=1)
[Projection]を「Parallel To Axes」に変更。
[Along X/Y/Z]の「Y」を有効に。(地面に対してY方向に沿わせるので)
※既に有効になってる場合は、一度外して再度有効にすると間違いないと思います。
![[Projection]を「Parallel To Axes」に変更](https://i0.wp.com/liquidjumper.com/Home/wp-content/uploads/2021/08/maya2022_component-tags_shrink-wrap_01.jpg?resize=456%2C639&ssl=1)
地面の形状に沿って潰れていた円柱が元に戻り、また、地面のモデルを動かすと円柱の底面が地面の形状に沿って変形します。

![]() |
|
地面のメッシュに沿わせた形状を固定する
シュリンクラップ(shrinkWrap)によって、接地面を沿わせる事ができたモデルの形状を固定するには、
Edit > Duplicate もしくは、Delete All by Type > History
接地する地面のメッシュモデルから離しても、底面の形状は固定されているので変わりません。
![]() |
|
まとめ:コンポーネント タグ(Component Tags)を使ったモデリング
コンポーネント タグ(Component Tags)を使い、モデルの底面を接地するメッシュモデルの形状に沿わせるモデリング方法を紹介しました。
円柱モデルの底面を接地するメッシュの形状に沿わせる手順は、
1)円柱モデルの底面をコンポーネント タグ(Component Tags)に追加
2)円柱モデルと接地するメッシュモデル対し、「シュリンクラップ(shrinkWrap)」を適用
3)接地するメッシュモデルを移動
複雑な接地面の上に建つ建造物をモデリングする場合や、接するモデルをぶっ刺しではなく形状に沿ってモデリングしたい場合に便利な方法なので、是非参考にしてみてください。
![]() |
|
Adobeのプラチナパートナーに認定されているデジタルハリウッドのオンラインCGスクール「デジハリONLINE」が提供する「Adobeマスター講座」。
基礎動画教材とAdobe creative cloudの一年版ライセンスがセットになった、コスパ最強のパッケージプランです。
学習ノルマは一切ありません。AdobeCCだけを目的に契約してもOK!
>> デジハリONLINE「Adobeマスター講座」
![]() |
|
![]() |
|
![]() |
|
BTOパソコンの草分け的ブランドFRONTIER(フロンティア) 3DCG/動画編集/ゲーム用途に合わせてCPUやGPUなどパーツを自由に選べてコスパにもこだわる方にオススメ。 |
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|