忘却まとめ

Blenderの中級者・上級者向けの踏み込んだ情報や、アドオン・3DCGに関する情報を記事にします

【Lazy Shapekeys】シェイプキーのフォルダ分け・強制転送・個々に別オブジェクト化するアドオン【Blenderアドオン】

Blenderアドオン

更新日:

シェイプキー編集を補助するアドオンを紹介します。
シェイプキーをフォルダー分けしたり、頂点数が合わなくても強制的に形状を転送したり、個々のシェイプキーを別オブジェクト化したりなど細かな機能があります。

■ 主な機能

  • シェイプキーのフォルダ分け
  • 全てのシェイプキーごとにオブジェクトを生成
  • 形状を転送(強制)
  • シェイプキーを保持したままモディファイアを適用
  • 同名別オブジェクトのシェイプキー同期
  • シェイプキーを左右に分離

ダウンロード

gumroad

Blender Market

シェイプキーのフォルダ分け機能

シェイプキーを整理するフォルダー機能です。
フォルダー用シェイプキーアイテムを追加することで、シェイプキーを一括管理します。

  • [デフォルト]タブでは、通常のリスト内にフォルダーが表示され、▼ボタンにより折りたたみすることができます。
  • [フォルダー]タブでは、[フォルダーのリスト]と[フォルダー内シェイプキー]の2カラムに分けて表示されます。

簡単なシェイプキー編集の場合は通常の1カラムリストを使用し、複雑な構造のシェイプキーを編集する時は2カラムのフォルダー表示を利用します。

新規グラフエディターウィンドウを開くボタン

シェイプキーのFカーブを調整する新規ウィンドウを表示します。

新規ウィンドウを表示し、シェイプキー名をグラフエディターの検索フィルターに自動追加します。
特定のシェイプキーのアニメーションを詳細に調整したいときに便利です。

  • このウィンドウがすでに表示されている場合は、検索フィルターのみ切り替えます。
    • (検索では、同名のFカーブアイテムも検索結果に表示されるので注意が必要です)
  • 表示時のウィンドウサイズは、実行したエディターのサイズになります。

キーフレーム関連の補助機能

キーフレーム一括挿入・一括削除ボタン

メニューの場所:フォルダータブのリストの上のボタン
フォルダ内の全てのシェイプキーに、キーフレームを一括挿入します。

  • フォルダ内の全てのシェイプキーにカレントフレームのキーフレームが打たれている場合は、全てのカレントフレームのキーを削除します。

シェイプキーフォルダ内の一括値リセットボタン(X)

シェイプキーフォルダ内のアイテムの値を、一括してリセットします。

注意点

フォルダ用シェイプキーは、通常のシェイプキーと同じシェイプキーデータです。
フォルダー用のデータが、頂点グループオプションの中に格納されています。

(シェイプキーにはカスタムプロパティを追加することができない仕様のため、このように実装しています)

リストのフィルターは使用できない

  • リスト下部の検索メニュー内の、[名前順にソート]オプションとフォルダー機能は共存できないので、これを有効化すると折りたたみや並び順は無視されます。

その他

  • フォルダー内の一括移動機能は、アイテム数が多いと重いです。
    • (シェイプキーの並び替えは、標準オペレーターを利用するしかないため)

形状を転送(強制)

他選択オブジェクトの形状を転送します。
頂点数が合わなくても、強制的に頂点インデックス同士で転送します。

カーブでも利用できます。

同じ頂点インデックスでなければ正しく変形はしない

あくまで強制的なので遠い頂点同士が転移してしまうため、そのままでは活用しにくいです(頂点インデックスが同じでないと完全に正常な形状には変形はしません)。

そのため、主に後述の機能で分離したシェイプキーオブジェクトを、再度1つのメッシュにまとめるために使える機能です。

その他、パーティクルなどの頂点位置だけが必要なモーショングラフィックスの下地などで利用できます。

均等に配分オプション

ターゲットオブジェクトの頂点数よりソースオブジェクトの頂点数が少ない場合、最後の頂点位置に残りのシェイプキーがまとまらないように、再度インデックスを繰り返します。

全てのシェイプキーごとにオブジェクトを生成

「原神」よりフィッシュルの配布モデルを参考

シェイプキーごとにその形状の新規オブジェクトを作成します。

全シェイプキーを一覧表示したり、一度別オブジェクト化して個々に編集した後、再度シェイプキーとして結合するような使い方に便利です。

オプション

作成されたシェイプキーのオブジェクトは、X軸に並びます。

シェイプキーが多すぎて作成オブジェクトの並びが長くなる場合は、Z軸に数値を入れるとカラム数ごとに折り返して並べることができます。

体と顔が一体化したメッシュで体を表示させたくない場合は、事前にマスクモディファイアで頭部のみ表示してからこの機能を実行すると、表情だけ見やすく並べることができます。

仕様

この機能は、対象のシェイプキーと参照している基本のシェイプキーのみを有効状態にしてから新規シェイプキーを作り、最後にシェイプキーを除去することで形状を固定化しています。

参照しているシェイプキーを再帰的に有効状態にするため、基本のシェイプキーがBasis以外でもいくつも基本の形状表示が必要なシェイプキーでも別オブジェクトとして書き出すことができます。

モディファイアを適用(シェイプキー保持)

シェイプキーがあってもモディファイアを適用します。
各シェイプキーごとの複製を作って、[シェイプキーとして結合]を実行します。
この機能では、シェイプキーの各値やドライバーも保持されます

  • 適用後に、各シェイプキーの形状ごとに頂点数が変わってしまうモディファイアは適用できません。
    • 例えば、ベベルモディファイアの制限方法:[角度]では、形状によってベベル箇所が増減して頂点数が変わってしまう場合があるため、適用に失敗します。

仕様

一時的に各シェイプキーごとのオブジェクトを作成して、全てに同じモディファイアを適用、[シェイプキーとして結合]を実行して再度1つのオブジェクトに戻すことでモディファイアを適用しています。
ちなみに同じ方法をやればアドオンなしでもモディファイアを適用できます。

  1. シェイプキーごとに、オブジェクトを複製する。
  2. 対象のシェイプキーの値を1、その他の値を0にして、シェイプキーを全て削除する。
  3. 複製した全てのオブジェクトに、同じモディファイアを適用して選択する。
  4. ベースオブジェクトをアクティブ選択し、[シェイプキーとして結合]を実行する。
  5. 他の複製オブジェクトの形状をシェイプキーとして追加することができる。

別オブジェクトの同名シェイプキーを一括操作

画像は[原神]キャラ(モナ)のモデルを使用

同じコレクションの中にある別オブジェクトの、同名のシェイプキーを一括操作します。
目・まつげ・眉毛など、オブジェクト分けされている同じシェイプキーをまるごと操作するのに便利です。

  • メニューの場所
    3Dビュー > サイドメニュー > Addons > Lazy Shapekeys

対象コレクション内のオブジェクトの同名シェイプキーブロックのリストを作って、一括操作できるメニューを作ります。

顔・目・眉などパーツ分けされたモデルのシェイプキーを一括調整するのにも活用できます。

  • アップデート時に全ての値を一括同期したくない場合は、シェイプキーを持つアクティブオブジェクトを選択しないで実行します。
    または、実行後に3Dビュー左下のメニューから、[アクティブオブジェクトの値を設定] オプションをオフにします。

参考

GitHub - mio3io/Mio3ShapekeySync: このアドオンはBlender3.0以降には対応していません。今の所対応予定はありません。

[シェイプキーを左右に分離]機能

原点を中心に、シェイプキーを分離します。
元のシェイプキーの値を0.0にし、変形を左右に分離した.L / .R シェイプキーを2つ新規作成します。

3Dビューから実行した場合、中心となるXYZ軸を変更できます。

極まれにBlenderがクラッシュする場合があるようです。

  • シェイプキー > その他のメニュー内

アップデート履歴

ver1.0.3 カーブ・サーフェスオブジェクトにてフォルダー表示できないバグを修正

2022-08-04

カーブ・サーフェスオブジェクトにて、フォルダー機能のフォルダー内アイテムリストが表示できない問題を修正しました。

ver1.0.3 シェイプキーのフォルダ分け機能を追加

2022-07-20

シェイプキーのフォルダ分け機能を追加しました。
シェイプキーの整理やフォルダーごとの一括操作で、よりシェイプキーを管理しやすくなります。

(ver1.0.3~ver1.0.35は、内部的にアップデートしていたので欠番です)

ver1.0.2

2022-02-02

  • モディファイアを適用(シェイプキー保持)機能を追加しました。
  • 同名別オブジェクトのシェイプキー同期機能を追加しました。

ver1.0.1

2021-04-21

  • 形状の転送(強制)機能
    • 利用できない問題を修正しました。
    • カーブのシェイプキーにも対応しました。
  • 全てのシェイプキーごとにオブジェクトを生成機能
    • 新規オブジェクト名オプションを追加しました。{obj_name}は複製元のオブジェクト名、{sk_name}はシェイプキー名に置換されます。

アドオンの制作依頼はこちら

-Blenderアドオン
-

Copyright© 忘却まとめ , 2022 All Rights Reserved Powered by STINGER.