1. サイトトップ
  2. ブログ
  3. Maya
  4. 【Maya】特殊な複製を使って規則的な配置作業を効率化してみる

【Maya】特殊な複製を使って規則的な配置作業を効率化してみる

こんにちは、情熱推進部アートデザイン課の村上です!

残暑が過ぎても暑い日が続きますね。
熱中症になると、物が二重に見えたりすることがあるそうです。

3Dでも二重どころではないくらい、同じパーツが増えていく事があります。
そんな時に便利な「特殊な複製」の使い方とインスタンス機能をご紹介します。

※本記事ではMayaCreative 2025.3を使用しています。

特殊な複製とは

特殊な複製(Deplicate Special)はMayaに標準で搭載されている機能で、複製時に様々な追加オプションを設定できる機能です。
作例として階段を作ってみたのでまずは動画をご覧ください。

手動でやるよりも早く正確なことが伝わったでしょうか。
主に以下のようなシーンで活躍するかと思います。

  • 階段や柱など、円形にオブジェクトを配置したい時
  • ビルの窓のような規則性を持った配置をしたい時
  • 配置をレビューしながら編集を行いたい時

特殊な複製の各種設定について

設定項目について見ていきます。

編集>特殊な複製(Deplicate Special)の箱アイコンをクリックしてオプションを開きます。

オプションウィンドウのスクリーンショット

設定ウィンドウの中を見ると以下の項目に分類されています。

  • ジオメトリコピーかインスタンスコピーかの選択と複製物をアウトライナにどのように並べるかの設定
  • 複製物の移動・回転・スケールや、複製する数の設定
  • コピー元に繋がっているノードをどこまで複製するかの設定(ジオメトリコピー時にのみ使用)

インスタンスについて

動画の最後で元のモデルを編集すると全てのコピーに同じ変更が掛かっていましたが、これはインスタンス機能のおかげです。
Ctrl+Dで実行できるジオメトリコピー(通常複製)とは別の処理なので違いを比較してみます。

  • ジオメトリコピー
    • ジオメトリがもつノードごと複製する
    • 個別でデータを持つのでそれぞれ編集が可能
    • 個別にデータを持つためファイルサイズが大きい
    • 通常の複製(Deplicate)と同様の処理
  • インスタンスコピー
    • 元のジオメトリのノードを共有している
    • 元のジオメトリの編集が全てのコピーに反映される
    • 元のジオメトリだけがデータを持つのでファイルサイズが小さい
    • 複製というより参照に近い

インスタンスを使うと実際の配置を試した状態で作業ができ、元となるジオメトリを編集するだけですべてのインスタンスに同様の結果が反映されます。
並べたときにモデル同士が干渉しないかなどの問題点をケア出来るうえに、同じ数のジオメトリを配置するよりもデータが軽く済みます。
今回はインスタンスの便利さを紹介したいのでジオメトリコピーならびにノード関連については割愛します。

グループ以下の設定について

複製したジオメトリをどの様にアウトライナに配置するかの設定です。
どのような違いがあるかを画像にまとめたので参考にしてください。

各種変形と複製数の設定について

移動・回転・スケールと3つ項目があり、左からX・Y・Zを担当しています。
ここで設定した値が複製するごとに掛かっていきます。
例えば回転Y軸90度で2つ複製した場合は、1つ目は90度、2つ目は180度回転して複製されます。

左右対称の物を作りたい時にスケール値Xに-1を入れたりすることもあります。
インスタンスと組み合わせることでBlenderのMirrorモディファイアに近い感覚でモデリングが出来ます。

螺旋階段を作ってみる

各種設定項目について見てきました。
ここからは実際に動画を再現する形で特殊な複製の使い方をご紹介します。

用意するもの

柱とステップを1段だけ用意します。
複製はピボットの座標を原点として実行されるので、ステップのピボットは柱の中心かつ高さ0の位置に配置します。

インスタンスコピーとアウトライナ上の並びの設定

今回はインスタンスを使用したいのでジオメトリタイプを「インスタンス」に設定し、元となるジオメトリとコピーが混ざらないようにグループ以下を「新規グループ」に設定します。


ジオメトリタイプは「インスタンス」を選択
グループ以下は「新しいグループ」を選択

この設定により特殊な複製を実行した時に、自動で作成されるグループ内にインスタンスコピーを格納してくれます。

変形パターンと複製する数を設定する

10段の足場を3mの高さになるように円形に均等配置したいので下記の通り設定します。

考え方としては「分母の値を複製数で割った数」を入力することです。

ステップ10段で柱の上に到達して欲しいので300cm÷10=30を移動Yの値に入力します。
円は一周360度なので、「360÷10=36」の値を回転Yに入力します。
複製数は10を入力します。

これでコピー1つにつき回転は36度、移動は30cmずつ反映されて複製されます。
回転と移動を組み合わせることで冒頭の動画のような螺旋状に並べることができます。

※本記事ではセンチメートルと度の単位で計算しています。
スケール単位はウィンドウ>設定/プリファレンス>プリファレンス>設定の中の「作業単位」から確認・設定できます。

以上の設定で実行すると動画の通り螺旋階段の形になりました。


おまけ

インスタンスに関するアレコレをおまけとしてご紹介します。

インスタンスをジオメトリに変換する

一部だけ削除や変更したいというシーンがあるかもしれません。
そんな時は編集したいインスタンを選択した状態で 修正>変換>インスタンスをオブジェクトに を実行することでジオメトリに変換することができます。

インスタンスのままFBXを書き出すとどうなるのか

インスタンスのままでもFBXとして書き出すことは出来ますが、UVが全て共通です。
そのため使いどころを考えないと、Substanceでベイクした時などに不要なAOが落ちたりします。
貫通がないモデルで使用する、目立つところだけジオメトリにしてUVをずらす、配置はエンジンで行うなどの対策が必要です。

適当に作ったハイポリゴンモデルをSubstancePainterでベイクしてみましたが不要な影が落ちています。

インスタンスとジオメトリでシーンファイルのサイズを比較

インスタンスとジオメトリでどの程度データ容量に差が出るのでしょうか。
今回の螺旋階段のデータを比較してみたところ約21.5%軽量でした。

シーンファイルの中身によって軽量化具合は変わってくるので、数値はあくまで参考程度です。
とはいえ積み重なるほど恩恵が得られるので、意外と馬鹿にできないかなと思います。

おわりに

いかがだったでしょうか。

ゲームエンジンの台頭により配置や整列はエンジン上でやることが多くなりました。
それでもモジュール単位の素材を作成する時は、並べたうえでどう見えるかを把握しながら作ることが大切だと思います。

クオリティと物量の両立が求められる中で、少しでも作業効率化の参考になれば幸いです。

ここまでご覧頂きありがとうございました。

参考文献

Autodesk Maya Creative公式ドキュメント


【免責事項】

本サイトでの情報を利用することによる損害等に対し、
株式会社ロジカルビートは一切の責任を負いません。