Blenderのボーンとアーマチャを用いたアニメーション
【目次】
基本的な作業の流れ
- キャラクターモデル(メッシュ)を用意する.既存モデルをインポートするか,Blenderで作成する.
- アーマチャ(骨格)を追加する.「追加」メニューから「アーマチャ」→「単一ボーン」を選択する.
- アーマチャを選択し,必要に応じてメッシュの中心に移動した上で(Gキーで移動),Tabキーで編集モード(選択しているオブジェクトの構造を編集するモード)に切り替え,必要なボーンを追加する.既存ボーンの端点を選択してEキーを押すと,そこから接続された新しいボーンを押し出すことができる.独立したボーンを追加する場合は,「追加」メニューから「ボーン」を選択する.
- 親子関係を設定する.階層構造において,動きの起点となるボーンが親,その動きに追従して動くボーンが子となる.例えば,腕の構造では上腕ボーンが親,前腕ボーンが子となり,胴体から腕全体への階層では胴体ボーンが親,上腕ボーンが子となる.子ボーンを選択し,次にShiftキーを押しながら親ボーンを選択し,Ctrl + Pを押して「接続」または「オフセットを保持」を選択する.ボーンが一直線につながる関節(前腕と上腕など)では「接続」,離れた位置にある場合(胴体と上腕など)では「オフセットを保持」を選択する.
- アーマチャとメッシュを関連付ける.アーマチャがメッシュの内部または中心に配置されていることを確認する.メッシュを選択し,次にShiftキーを押しながらアーマチャを選択し,Ctrl + Pを押して「自動のウェイトで」を選択する.
- (必要に応じて)ポーズモードで逆運動学(IK:Inverse Kinematics)コンストレイントを設定する.IKを使用すると,末端のボーンを動かすだけで連結されたボーン全体が動くため,複雑なポーズの作成が容易になる.ボーンを選択し,プロパティパネルの「ボーンコンストレイントプロパティ」タブからIKを追加することができる.
- アニメーションを作成する.ポーズモードにおいて,フレーム上でポーズを取らせ,Iキーを押してキーフレームを挿入する.
動作確認の方法
- アニメーションのプレビュー:タイムラインの再生ボタンを押すか,スペースキーを押して確認する.
- ウェイトの検証:ポーズモードでボーンを回転(R)して動かし,メッシュが期待通りに変形するか確認する.
- 視覚モード切替:Zキーを押して,ワイヤーフレームやソリッド等の表示モードを切り替え,変形を確認する.
ありがちな失敗例と回避策
頂点を誤って動かしてしまう
誤って頂点(3次元モデルを構成する点)を動かしてしまう場合がある.
回避策:Ctrl + Zで操作を取り消す.Blenderでは「やり直し」機能のショートカットはCtrl + Shift + Zである.
メッシュの内側に隠れた頂点の割り当て忘れ
メッシュ(3次元モデルの表面を形成する多角形の集合)の内側に隠れた頂点を,ボーン(キャラクターを動かすための仮想的な骨格)に割り当て忘れる場合がある.
回避策:
- ウェイトペイントモード(頂点とボーンの関連付けを色で視覚化して編集するモード)でカメラをメッシュの内側に移動し,すべて塗る.テンキーの.キーで選択オブジェクトにフォーカスすることができる(テンキーがない場合は,「表示」メニューから「選択物をフレーム表示」を選択する).
- 割り当て忘れた頂点を含むメッシュを選択し,ボーンに割り当てる.具体的には,オブジェクトを選択→編集モードに切り替え→対象の頂点を選択→右側のプロパティパネルを開く→「オブジェクトデータプロパティ」タブ→「頂点グループ」セクション→該当ボーン名を選択→「割り当て」ボタンを押す.
ウェイトペイントモードでの意図しない塗り
ウェイトペイントモードにおいて,追加モードで赤く色を付けているとき,奥にある別の頂点にも意図せず色を塗ってしまう場合がある.
回避策:
- Ctrl + Zで操作を取り消す.
- 塗り間違った赤い箇所を,減算モードで青く塗り直す.ウェイトペイントモードの上部ツールバーから「減算」を選択するか,ブラシ設定で操作を「減算」に変更する.
- あらかじめ,塗る対象以外のメッシュを隠すことで塗り間違いを防ぐ.具体的には,編集モードで塗りたくない部分の頂点や面を1つ選択し,Lキーを押すと,その部分に連結されたメッシュ全体が選択される(図中の黄色いメッシュ).その状態でHキーを押して隠す(図参照).隠したメッシュは塗ることができなくなる.隠したメッシュはAlt + Hですべて表示させることができる.
ボーン追加時のアーマチャ分離
ボーンを追加する際に,オブジェクトモード(オブジェクト全体を操作するモード),ウェイトペイントモード,ポーズモード(ボーンを動かしてポーズを作るモード)の状態で追加操作を実行すると,別のアーマチャオブジェクト(アーマチャ:ボーンの集合体)にボーンが追加されてしまい,アーマチャが分離して正常に機能しないという問題がある.これは,編集モード以外では既存のアーマチャの内部構造を編集することができず,新規オブジェクトとして追加されてしまうためである.
回避策:操作を取り消し,ボーンを追加したいアーマチャを選択した上で,編集モードに切り替えてからボーンを追加する.編集モードでは,選択中のアーマチャの内部構造として新しいボーンが追加される.または,ボーンの端点を選択し,Eキー(Extrudeの略)で押し出して追加する.
具体的な手順:アーマチャオブジェクトを選択→Tabキーで編集モードに切り替え→「追加」メニューから「ボーン」を選択するか,既存ボーンの端点を選択してEキーを押す→配置を確定→Tabキーで編集モードを終了する.
重複頂点の問題
作成したモデルにおいて,複数の頂点が同じ位置に重複して作成されてしまう問題がある.モデル作成時にEキーによる押し出しで頂点,辺,面を追加した後,マウスを動かさずに右クリックでキャンセルすると,新しい頂点が元の位置に残ったまま操作が終了するため,重複頂点が発生する.
回避策:モデルを選択し,編集モードでメッシュメニューの「クリーンアップ」内にある「距離で統合」で,重なっている頂点同士を統合する.その際の統合距離の設定により,どの程度の距離であれば重なっていると判断するかを調整することができる.
具体的な手順:メッシュを選択→Tabキーで編集モードに切り替え→全選択(A)→メッシュメニューを開く→「クリーンアップ」→「距離で統合」をクリック→結果が表示されるので確認する.
ウェイトの割り当て時の視点の問題
ボーンのウェイトの割り当て(ボーンがどの頂点をどの程度動かすかの影響度)において,ウェイトペイントモードのときに視点の取り方によって,意図せず別の位置にもウェイトを割り当ててしまう,または割り当てることができないという問題がある.
回避策:視点を適宜操作し,作業しやすい位置に変更する.テンキーの1(前面),3(右面),7(上面)等で視点を変更することができる.それでもウェイトペイントモードで塗りにくい場合は,モデルを選択し,編集モードで割り当てたい頂点を選択した上で,プロパティパネルの「オブジェクトデータプロパティ」タブ内の「頂点グループ」セクションにおいて,関連付けたいボーンの名前の頂点グループを選び,ウェイトを決めて割り当てる.
ウェイトペイントモードでブラシ設定を調整する手順は,上部ツールバーのブラシアイコンをクリック→「強度」を下げる(0.5程度)→「半径」を調整して精密な塗りを可能にする.また,「Xミラー」オプションをオンにすると,左右対称のキャラクターではウェイトを片側だけ割り当てれば,もう片側にも自動的に反映される.
よくある質問と答え
- Q:アーマチャを作った後,ボーンが見えなくなった.
- A:ビューポート上部の「オーバーレイ」ボタンがオンになっているか確認する.または,オブジェクトの表示設定で「前面」をオンにすると,メッシュを通してボーンが見えるようになる.
- Q:自動ウェイトが機能しない.
- A:メッシュの構造が複雑である場合がある.メッシュを単純化するか,手動でウェイトを割り当てる.また,アーマチャがメッシュに対して適切な位置にあるか確認する.
- Q:アニメーションがカクカクする.
- A:キーフレーム間の補間方法を確認する.ドープシートエディタでキーフレームを選択し,右クリックメニューから「補間方法」→「ベジェ」を選択することでなめらかになる.