アーマチュアを移植・統合

  • 2022.12.16
  • CG
アーマチュアを移植・統合

今回はBlender TIPSです。あるモデルの髪の毛オブジェクト・ボーン・ウェイト情報を、他のモデルに持って行きたくて方法を探しました。単にアペンド・統合するだけでは髪の毛が動かなかったのでメモとしてブログに書いておきます。

今回、揺れる髪の毛はvket用に編集したモデルのみに急遽実装しました。時間がなかったので・・・。なのでマスターモデルの方に逆輸入的に持ってくることになりました。

アペンド

マスターモデル側で、ファイル→アペンドを選択し、vketモデルのblenderモデルファイルを選択します。その中のObjectを選択し、今回持ってくるターゲットの「hair.unified」を選択します。

もともとあったArmatureの他にArmature.001が追加され、髪の毛オブジェクト、髪の毛ボーン+それ以外も含む全ボーンが入っています。

この状態でポーズモードにすると、髪の毛にウェイト情報が存在しており動かすことができます。

しかしマスターモデル側のアーマチュアと統合されていません。

余計なボーンを削除・ボーン名重複チェック

余計なボーンがアペンドされているので、髪の毛ボーン以外を削除します。ボーンを選んでTABキーを押し、ボーン編集モードへ入ります。髪の毛ボーンの根っこはhair.ROOTなのでそれを選択します。そしてSHIFT-Gで類似選択メニューを出して「子」を選びます。

するとhair.ROOT以下全てが選択されます。

そこでhキーをおして髪の毛ボーンのみ非表示にします。aで髪の毛ボーン以外を選択し(マスターモデル側のArmatureは非表示にしている前提)、xキーでボーン削除します。そしてALT-hを押せばアペンドしたArmature.001側は髪の毛ボーンのみになります。

ここでもう一つチェック。ArmatureとArmature.001で名前の同じボーンが無いかチェックし、あったらかぶらないようにボーン名変更しておきましょう。

またアペンドした髪の毛ボーンはmキーでマスターモデル側ボーン入っていないレイヤーに移しておくと、統合したときに混ざらなくて管理しやすいでしょう。

統合

次にアーマチュアの統合です。マスターモデルのArmatureの非表示を解除し表示しておきます。マスターモデル側のオブジェクトモードで、あたらしく読み込んだアーマチュアを選択(髪の毛ボーンを選択すればいい)します。次にSHIFT押しながらマスターモデルの人体Armatureを選択(腕などどこかのボーンをSHIFTおしながら選択)します。CTRL-Jで結合。結合先は最後に選択したArmatureになるのでマスターモデル側のArmatureに統合されます。

統合できましたが、このままだと髪の毛がボーンに合わせて動いてくれません。オブジェクトモードで髪の毛オブジェクトを選択しモディファイアプロパティのアーマチュアを確認します。

オブジェクトが何も設定されていません。これが髪の毛動かない原因です。Armatureをいれます。これでポーズモードに入れば、髪の毛ボーンに合わせて髪の毛オブジェクトが動くようになります。

後は接続処理関連です。hair.ROOTとheadボーンがつながってないので接続します。ボーン編集モードでhair.ROOTを選択し、ボーンプロパティからペアレントにheadボーンを設定します。またhair.unifiedメッシュもArmatureの中にあって気持ち悪いので移動しましょう。オブジェクトモードでhair.unifiedメッシュを選択し、mキーから新規コレクションを選択し「hair」など新しいコレクション作っておいてあげましょう。

これで完成です!

CGカテゴリの最新記事