Amazonで商品を見るセール会場へ

【Maya】元オブジェクトと頂点番号が違うオブジェクトを転送コピーする方法

頂点番号が違うメッシュの形状を移すには、ベースの複製を転送先にし、頂点の対応条件に合う方法で位置を転送します。

掲載画像やメニューは当時のもので、現行版での再現試験は行っていません。

通常の頂点対応によるブレンドシェイプでは、同じ頂点番号が別の位置に対応していると、意図しない変形になります。

頂点数が同じでも頂点順が一致するとは限りません。

位置を移すTransfer Attributesと、頂点ID順を変えるTransfer Vertex Orderは別の機能です。形状を移したい場合は、元の頂点順を保つベースの複製へ頂点位置を転送する方法を検討できます。Autodesk:頂点順の転送

Transfer Attributesでは形状の転送元→ベースの複製の順で選択し、Vertex positionをオン、不要なUV・法線・カラー転送はオフにします。接続関係が同じでIDだけ違う場合はTopologyで対応を取れます。結果を確認してからターゲットとして使用してください。Autodesk:Transfer Attributes

目次

標準のTransfer Attributesで位置だけ転送する

作業前にシーンを別名保存し、形状を受け取るベースの複製を名前で区別してください。

転送元をオブジェクトモードで先に選び、転送先を最後に選択して、Mesh → Transfer Attributesのオプションを開きます。

最後に選んだ転送先が変更されるので、元リグを直接選択しないでください。

Vertex positionは初期設定でオフ、UV setsとColor setsはAllのため、位置だけ移す場合は転送項目を必ず確認します。

Sample spaceは、どの頂点や表面を対応付けるかを決める設定です。

  • Topology:接続関係が同じで頂点IDだけ違う場合に使います。
  • Component:頂点・辺・面の数と対応関係が一致する場合に使うため、頂点数だけ同じという理由で選びません。
  • World:ワールド空間の位置を基準にするので、対応する形状を同じ場所に合わせます。
  • Local:形と大きさが対応し、移動や回転で離して置いているメッシュをローカル座標で比較します。
  • UV:共通するUV配置で対応付ける方法で、UVそのものを転送する設定とは別です。

条件に合うSample spaceを選び、Transferで実行してから、転送範囲と形状を確認します。

部分転送では転送先の頂点だけを選択できますが、選択していない部分まで意図せず変わっていないかも確認してください。

頂点順を変えるTransfer Vertex Orderの公式手順には、両オブジェクトのヒストリ削除が含まれます。

スキンなどの変形履歴を持つ制作中の元リグへそのまま適用せず、位置転送で足りるかを判断し、検証用の別シーンで扱ってください。

2026年10月26日に上記Autodesk資料を照合した説明で、今回Maya上で再現した結果ではありません。

スポンサーリンク

外部ツールMesh PickWalkerの旧導入記録

  • 当時はHighend3DからgeometryWalkerを入手しました。現在の配布物・対応Maya版・利用条件は今回確認できていません。
Maya – Mesh Reorder / Transfer vertex position Tool (Mesh PickWalker)
  • 入手した配布物の説明に従い、geometryWalkerパッケージをユーザーのscriptsフォルダへ配置します。
  • 以下は旧版の起動例です。MayaのScript EditorのPythonタブで実行するコードで、配布版の構成に合わせる必要があります。
import geometryWalker.QT.pickWalker_UI as pickWalker_UI
pickWalker_UI.pickWalkerUI()

正常に起動することを確認できたら、シェルフに登録しておくと便利です。

頂点番号が異なるメッシュをブレンドシェイプした場合の挙動

頂点番号が異なるメッシュ同士で通常のブレンドシェイプを適用する前の準備手順。

はじめに、頂点番号が不一致の状態で通常のブレンドシェイプを実行してみます。

頂点番号が一致していないオブジェクト同士でブレンドシェイプを適用します。

頂点番号が一致していないオブジェクト同士に通常のブレンドシェイプを適用した状態。 頂点番号の不一致により対応関係が崩れ、正しく変形せずメッシュの形状が崩れた様子。

頂点の対応関係が崩れているため、形状が正しく変形せず崩れてしまいます。

Maya Mesh Reorder / Transfer vertex position Tool for Mayaの使い方

以下は当時の検証結果です。

使用するメッシュの接続関係によって結果が変わります。PickWalkerにはUndo非対応の注意があるため、実行前にシーンを別名保存し、元データを残したコピーで確認してください。Reallusion公式:PickWalkerを使う工程

配布版の説明に従い、SourceとTargetの対応するフェース、およびそのフェース上の隣接する2頂点を登録して方向を合わせます。

変更される側を確認してからPick Walkを実行してください。

互いに対応するフェースと頂点をそれぞれ選択してツールを実行する手順。

PickWalkerの結果が違った場合はUndoに頼らず、実行前に別名保存したシーンを開き直して、対応フェースと頂点の順番を見直します。

転送後は頂点数と接続関係、残したいUV、必要な頂点IDの対応を確認し、ブレンドシェイプのウェイトを0から1へ動かして途中の形状も確認してください。

リグやスキンがある場合は既存のポーズでも確認し、見た目の位置が合っただけで元データへ採用しないでください。

頂点番号のみが異なり形状が同一のオブジェクト同士の場合

頂点番号のみが異なり同一形状のオブジェクト間で、破綻なく位置情報が転送された結果。

当時の検証用メッシュでは、破綻なく位置情報を転送できました。

頂点番号が異なりコピー元の一部の形状を削除している場合

コピー元の一部の形状を削除したメッシュ間で位置情報の転送を行った結果。

当時の部分削除した検証用メッシュでは、転送処理が完了しました。

次の画像は、当時のメッシュで共通する部位を部分転送した記録です。

メッシュの共通している部位のみを対象にして部分的に転送を行った状態。

当時の検証用メッシュでは、頂点をマージした箇所があるとエラーで停止しました。

すべてのマージ済みメッシュで必ず失敗するという一般的な条件は確認できていません。

当時の例では、コピーしたメッシュでマージ箇所を取り除くと転送できました。

元のモデルを直接削除せず、転送後の形状と頂点の対応を確認してください。

頂点番号が異なりコピー元の一部の形状を押し出しで増やしている場合

コピー元の形状を押し出しで増やしたメッシュに対して位置情報を転送した結果。

この検証用メッシュでは押し出しで増えた部分があっても転送できました。

すべての押し出し形状で成功することを保証するものではありません。

https://www.youtube.com/watch?v=M6V8nUGQSlw

3DCGに関するほかの関連記事は、まとめ一覧から確認できます。

Mayaのグラフエディタの基本操作と活用方法はこちらで解説しています。

配布版によってPythonやQtの対応が異なる可能性があります。

旧例はQTですが、Reallusionの例はQtです。

大文字小文字を推測で変更せず、実際のパッケージのフォルダ名・起動例に合わせてください。

ImportErrorが出る場合は、対応バージョンと配置先を確認し、同名の別ツールを混在させないでください。

Mayaの記事は、ほかにもあります。

次に学ぶ・作業環境を選ぶ

学習を続けたい方や、作業環境を整えたい方は、目的に合うガイドをご覧ください。

3DCGのおすすめ書籍

3DCG用PCの選び方

周辺機器の優先度

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次