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