2021/7/19エンジニア

    [Maya] クリーチャーに使える!MASHで大量のオブジェクトをモデルに付着させる方法

    執筆: M.T.

    はじめに

    ORENDA第二制作課のM.T.です。

    今回はMAYAのMASH機能を使用した表現手法の1つを紹介しようと思います。

    前回に続いて今回もクリーチャー向けの表現です。趣味がわかりますね。

    ここでは、クリーチャーの皮膚に付着しているモノを表現してみます。

    言葉にするとやはりニッチな感じですが、クリーチャーを作っているとそれなりの頻度で表現したくなります。

    ご紹介する知識が、皆様にとって新しいものであったり、創作のヒントとなり、どこかで役立ってもらえれば幸いです。

    環境

    MAYA2018を使用します。

    ベースモデルにはZBrushのプリセットを用いました。

    作例紹介

    例として、図1のような表現を目指します。

    ZBrush のプリセットモデルに、無数のキューブオブジェクトを追加しました。

    ※本来はエイリアンの卵や、小さな寄生虫的なものを配置するところですが、今回は控えました(見た目的に)。

    MASH機能紹介

    MASH機能は、1つのオブジェクトをもとに、複数モデルの配置やアニメーションを管理できる機能です。モーショングラフィックス系の作例や紹介が多い機能です。

    しかし、アニメーションだけでなくモデリングにも有用な機能ですので、今回はその一例をあげてみます。

    ※MASHが機能にない場合、プラグインマネージャーからロードしてください。

    準備

    ベースになるモデルと、配置するオブジェクトをシーンに読み込みます。

    ベースモデルは、UV展開されていることが条件です。

    今回はZBrushのプリセットモデルと、キューブを用意します。

    MASHネットワークの作成

    メニューセットを”FX”にし、

    キューブ選択 ⇒ MASH ⇒ MASHネットワークを作成

    ※MASHネットワークを作成のオプションは、初期設定で大丈夫です。

    設定変更

    ①アウトライナからMASHノードを選択

    ②MASH_Distribute ⇒ 配置タイプをメッシュに変更

    ※画像ではMASH2になっていますが、説明用に複数のMASHネットワークを作成したためです。

    入力メッシュにBodyメッシュを設定すると、図のように体にキューブが張り付きます。

    ※わかりやすいように、ポイント数を初期設定から1000に変更しています。

    MASH_Visibilityノードの追加

    今は全身にキューブが張り付いている状態です。

    次はこのキューブが張り付く範囲をコントロールします。

    キューブが張り付いてほしい部分を白くしたマスクテクスチャを作成します。

    ※テクスチャを作成するだけで、モデルに貼り付ける必要はありません。

    MASH ⇒ MASHエディタ 

    ①MASH1を選択 ⇒ ②可視性ノードを追加

    MASH_Visibility

    ①強さマップに先ほど作ったマスクテクスチャを適用

    ②マップ投影の軸 ⇒ UV

    ③マップヘルパー ⇒ Bodyメッシュを適用

    ※反転に✓を入れれば、マスク領域を反転できます。

    ここでキューブの配置方法を変更します。

    ①MASH_Distribute ⇒ 配分方法を”頂点”

    ②塗り潰しメッシュに✓

    これでマスク範囲にキューブがしきつめられました。

    MASH_Randomノードの追加

    最後に、キューブの配置に不規則性をもたせます。

    MASH ⇒ MASHエディタ 

    ①MASH1を選択 ⇒ ②ランダムなノードを追加

    緑枠内の数値を色々変えてみてください。

    変更はビューポートにすぐ反映されるので、自身の気に入った値を見つけてみてください。

    完成

    これで完成です。おつかれさまでした。

    MASHには今回紹介しなかった多くの機能やパラメータがあります。

    変化はビューポートですぐに確認できるので、ご自身でも色々試してみてください。

    補足

    ノードエディタで接続を変更すれば、キューブを円錐やシリンダー等、別のモデルに置き換えることもできます。

    関連リンク