Blenderを使ったポーズ作成に挑戦します

基本的にはtktkさんがwikiにまとめて下さっている
SkyrimMOD作成wiki - ポーズ・モーション作成 を参考に進めて行くのでダブってる所が結構あります


ただポージングの操作は位置回転とも操作が流動的過ぎるので細かい説明はできていませんし、Blenderやボーンについてのとっ散らかった説明がメインになってます
本当に回りくどく、読みにくい記事なので一気に最後まで読むのはかなりきついと思います
あとSSが多いので長いです




もくじ

-0:準備-
0a:必要なもの

-1:Blender設定など-
1a:Blender日本語化
1b:Blender操作
1c:編集するボディを読み込む
1d:UIの説明

-2:ボーンの改造(微)-
2a:手の指関節を自由に動かせるようにする
2b:右足の修正
2c:胴体の微改造

-3:ポーズ編集-
3a:ボーンの動作
3b:各部位のボーン
3c:レッツポージング

-4:ファイル作成-
4a:ポーズ書き出し
4b:hkxファイルに変換
4c:リネーム&レッツポージング


-0:準備-

0a:必要なもの

Blender(2.62以上必須) >>> Download
Animation Tools N3 - with IK armature [NEXUS][DB]
これだけ!わぁ簡単!!
Animation Tools N3にはオプションファイルがありますが、バニラ女性モデルを追加するものとXPMSのα版のテンプレートのようなものなので特に必要はありません
Blenderは古いバージョンでも一応読み込めますが表示がプチホラーになり編集もできてるような感じですが書き出してポーズとして使えるかどうかはわかりません

Blenderのインストール先とAnimation Tools N3の展開フォルダはどこでも問題ありませんが頻繁に開くことになるのでアクセスしやすい場所にするかショートカットを作成するのがいいと思います
インストール/展開が終ったら

Animation Tools N3を展開したフォルダにあるskeleton.txt

blender.exeがあるフォルダ
にコピペします
これはBlender内からスクリプトを書き換えることでも代用可能なのでお好きな方で
(詳細は上記wikiを参照してください)
この作業をしておかないとポーズを書き出しができません


-1:Blender設定など-

1a:Blender日本語化


Blenderを起動し(最初のわけわからんやつは画面クリックで消えます)ツールバーの
[File] > [User Preferenses]で設定画面に入ります


Systemタブの右下にある[International Fonts]チェックボックスをオン


Language: という項目が出てくるので日本語を選択、その下の[インターフェイス]と[ツールチップ]のボタンをオン
最後に[ユーザー設定の保存]を忘れずに

最初から多言語に対応してるとか素敵ですね
ただ、特別苦労するとかってわけではありませんが、Blenderの解説をしているサイトさんには英語版のまま説明をされいるところが多かったりするので逆にわかりにくいことがあるかも知れません
当ブログでは以降日本語化後の表記での説明になります

1b:Blender操作とか

操作が特殊なモノが多い3Dソフトの中でもBlenderはポーズ編集に限れば分かりやすい方だと思います
こちらのページに操作方法やショートカットなど載ってますので参考にしてみてください
自分で良く使うキー/ショートカットキーはこの辺り

スクロールホイールドラッグ(カメラ対象軸回転)
Shift(押下スクロールホイールでカメラ上下移動)
Ctrl(〃左右移動)
G(ボーン移動 / Alt押下でボーン位置初期化)
R(ボーン回転 / Alt押下でボーン角度初期化)
X(G/Rの後でX軸操作)
Y(〃Y軸操作)
Z(〃Z軸操作 / ワイヤーフレーム表示)
A(全ボーン選択)
Ctrl+Z(アンドゥ)
Ctrl+Alt+Z(リドゥ)
Ctrl+左ドラック(範囲選択)
F5(パース切り替え)
numキー
1(背後カメラ / Ctrl押下-正面カメラ)
3(右側カメラ / Ctrl押下-左側カメラ)
7(上面カメラ / Ctrl押下-下面カメラ)
Ctrl+Alt+Q(4方向マルチウインドウ)
4/6(カメラ左右対象軸移動)
2/8(カメラ上下対象軸移動)
. (選択部位注視)

あたりです
他には右クリックがメニュー表示とかじゃなくてボーン選択だったりします
Blenderのバージョンによって操作方法にわりと相違があってバージョンの記載が無いまま説明されてるサイトもあり、インターネッツで調べる場合は多少根気が必要かも知れません

日本語化で触れたユーザー設定の中にある入力タブで細かい操作方法を変更できます

たぶん全てのキーコンフィグを弄れると思います(多すぎてわからない)
基本的な選択キーを右クリックから左クリックにしたり3DSMAXやMAYAの操作をベースにすることもできたりカスタマイズの幅はかなり広いです
3D系に限らずどんなアプリでも操作が感覚的にできるかどうかってのは使っていく上で非常に重要なので簡単にカスタマイズができるのは嬉しいところ
回転スタイルはデフォルトのものよりトラックボールタイプの方が個人的に好みなのですが、ここで設定を変更しても効果ありませんでした(´・ω・`)

ただしカスタマイズが過ぎると解説サイトが役に立たなくなる可能性もある諸刃ソードでもあります


1c:編集するボディを読み込む


[ファイル] > [開く]でAnimation Tools N3を展開したフォルダから

Example_Male_Vanilla.blendExample_Female_UNP.blend(+オプションのVanilla female bodyをダウンロードしている場合はExample_Female_Vanilla.blend)から選んでロードします
ボーンの構成自体は同じなのでどれでポーズを作っても基本的に問題無いですが、間接が細く破綻具合がわかりやすいので女性ボディの方がやりやすいかなと思います
えっちだから女性ボディで説明してるわけでは無いです
えっちなこと自体は否定しませんが


1d:UIの説明


ボディを読み込んだ直後はこの配置になっていると思います
ツールウインドウやプロパティエディタはなんやかんや使うこともあるのでそのままにしておくのがいいと思います
左のテキストエディタや下のPython Consoleはポーズ編集中に操作することは無く邪魔なだけなので閉じるか別の情報を表示しておくのがいいです

別の情報を開く場合


テキストエディタ下のウインドウヘッダの左端にあるプルダウンボタン(ややこしい)で表示するものを選びます
3Dビュー以外はたぶんポーズ編集には使いませんので省略します(だってわかんないし)
訳分からなさに拍車をかける意味でも色々見てみるのもオススメです
Python Consoleも同じようにプルダウンから適当に選びましょう
Pythonについては説明しませんが別に分からない訳じゃありません、知らないだけです


ウインドウを結合する場合


ウインドウ境界線、マウスカーソルが左右カーソルに変化するところで右クリックし、出てくるメニューで[エリア結合]を選択

こんな矢印が出るので結合したい方向でクリックで合体です
ウインドウ構成によっては結合できない場合もありますが、別のウインドウを結合していけば最終的に1つにまでまとめられます

逆に各ウインドウの右上にあるナナメの模様を引っ張ると新しいウインドウを引き出せるので複数視点を表示しておくことで微調整(特に回転)がやりやすくなります
自分はこんな感じの構成にしてます



ご心配なさらずともポーズ編集の話はまだまだ先の話です



-2:ボーンの改造(微)-

ここからの説明でのボーン名称で左右にあるものは _R や _L と付くものや末尾に [xxx] 等と付くものがありますが省略してますので脳内補完でお願いします
それと文中にIKとかFKって単語が出てくることがありますが、IKとFKの違いは以下の通りです
IK FK
左がデフォルトで右が脚のIKを削除してFK制御にしたもの
説明が難しいのですが、ノルド的な表現を用いるなら「結構違います」
真のノルドは数ヶ月に一度やたら長い記事を書く以外は多くを語らないのです

あ、先行っていいすか

2a:手の指間接を自由に動かせるようにする

これは必須項目ではありませんがデフォルト状態だと親指と他の指4本の二つしか制御できず、動きも基本的に開く・握りこむくらいしかできません
指1本立てるだけでお金を取られたりブチ殺されたりしますので手の表情は大事だと思うのです


上のSSにある Controller_AllFingers / Driver_Finger0~4 / Constain_Finger0~4 の左右計22個のボーンを削除することで指の各関節が可動するようになります


ウインドウヘッダで[ポーズモード]となっているところを編集モードに変更します


このモードで削除したいボーンを右クリックで選択しXキーを押すと小窓が開くのでそのまま[選択したボーンを削除]をクリックすることでボーンが削除されます
※sift+右クリックで複数選択できますが、裏に隠れてるボーンを優先的に拾うような挙動なので各指間接の小さいボーンを選択してしまったりしてこの作業では使いにくいです
間違って必要なボーンを削除してしまうと自力でボーンを作って再設定しないとその間接が調整できなくなってしまうので注意してください



不要なボーンを全て削除しました
再びポーズモードに切り替えれば指間接の小さいボーン15個も移動や回転できるようになります
これはもうマスターグレードと呼んで差し支え無いですね


ここまで終ったら別の名前で保存しておくと良いかと思います


2b:右足の修正

これはたぶん作者さんの設定忘れかと思うのですが、右足のつま先におかしいところがあります

デフォルトの場合だと右足だけつま先の回転を制御できません
右足の先っちょの方の NPC R Toe0 を選択し、プロパティメニューにあるボーンコンストレイント(骨と鎖みたいなアイコン)をクリックし下の方にあるチェックボックスをオンします
頻繁に使うボーンでもないしIK任せでも不自由しませんが、一応これで左右同じようにコントロールできます


2c:胴体の微改造

デフォルトでも NPC Pelvis を使えば腰周りの制御はできるのですが、NPC Pelvis は上部の NPC Spine と直接接続されていないのでお腹や胸周りの調整が少し面倒なのを多少改善する方法
自分で扱いやすいよう好き勝手に微改造した手順です
まず最初はデフォルトの状態で触ってみて、使いにくいと思ったら試してみる程度にお考えください
あとボーン削除も含まれるものもあり元の状態に戻すのは結構しんどいので元ファイルを上書きしないように注意してください(上書きしてもまた解凍すりゃ済む話ですけど)


その1:大きな変更をせずに下腹部まわりだけ変更する方法


方法1


えっちなところにある NPC COM(同じ位置に NPC Pelvis が隠れてるので注意) というボーンを選択し、ボーンコンストレイントでボックスの×ボタンを押して制限を削除
この方法では腰周りの制御を NPC COM で行うことになります


方法2(結果的に上と同じ動作になります)

NPC Pelvis(NPC COMの裏に隠れてるので右クリック2回)を選択した状態で右のプロパティエディタにある骨アイコンを押し、親が NPC COM となっているのを NPC Root に変更、次にNPC COM の親を同様の操作で NPC Root から NPC Pelvis に変更
親:NPC Root━子:NPC COM━孫NPC Pelvis になっているのを子と孫を入れ替えるだけです
こちらの方法はデフォルトと同じように NPC Pelvis で腰の制御を行います

どちらでも基本的な動作は同じで、腰を調整した時の胴体の挙動が結構変わります(他にも方法はありますが挙動は同じです)
少なくともデフォルト状態よりは制御しやすいのでは無いかと思います


その2:胴体のIK制御を削除する方法

まず上の方法1でやった NPC COM のボーンコンストレイントの制限を削除


次に編集モードに切り替えて胸にある Controller_Spine2 をXキーでボーンごと削除
消したあと半分隠れてた NPC Spine2 という小さいボーンが見えるようになります


再びポーズモードに切り替えて NPC Spine2 を選択し、NPC COMにやったのと同じようにボーンコンストレイント→ボックスの×ボタンで制限削除

この改造をすると胴体ポージングの挙動が結構変わり、胴体は NPC COM から NPC Spine2 までの4つのボーンを使ってFK制御することになるので、作業量は増えますが自由度は一応上がります
デフォルトから大きく変わるのであまりお勧めできませんが個人的にはまぁまぁ使いやすいと思います

以下はデフォルトと微改造を行った場合の参考画像です

NPC Pelvis 又は NPC COM のX軸を同じだけ移動させた場合の挙動
デフォルトのボーン構成だと胸にある Controller Spine2 と下腹部の NPC Pelvis が連動せず別個で動くので腰に動きのある(えっちな意味ではありません)ポーズを付けようとするとこの二つのボーンをかなり細かく調整しないとお腹周りが大変なことになりがちです
微改造1の場合は 腰に NPC Spine が繋がって引っ張られる形になり、下方向には連動するのですが、腰を上方向に動かした場合は NPC Spine2(胸)が上方向に連動せず腹部がかなりヤバい形に破綻してしまうので、デフォルトより使いやすいとは思いますが胸部の調整には慣れが必要かなと思います
微改造2ではIKを削除しているので下腹部から胸部にかけては変形せず、そのままの形で追従
調整するボーンは増えますが無茶なポーズを取らせなければ破綻しにくく、破綻してもしても修正しやすいです(胴は太いので元々破綻しにくいですが)
某3Dカスタム少女とかのポーザーに慣れている場合はこちらの方が使いやすいと思います

全身のIKを削除してFK制御にもできたのですが、ボーン削除とか親子の再設定とかやたらやることが多いのと今回の説明には使わないので省略し元気があればまた別エントリにまとめます


-3:ポーズ編集-

やっとです
ここまでもそうですが、ここからは話が前後したり飛んだり、特に散らかった説明が延々と続きます
ミもフタもありませんがご自分で好き勝手に弄くりまくって挙動を見てみる方が絶対分かりやすいです

3a:ボーンの動作

ボーン移動
ボーン設定によって周りのボーンが追従したり間接がみゅーんと伸びたり挙動は結構変化し、伸びる場合は「他のボーンも移動させないといけない」か「触ってはいけない」か「回転のみ」のボーンと思っていいと思います
カメラに対して垂直の座標で動くので前後左右上下の視点を駆使して調節になりますが、感覚はわりとすぐ掴めます

ボーン回転

回転もボーン設定によって周囲の挙動が全く変わり、手首や足首には腕/脚が連動するボーンと個別に回転を制御するボーンが分かれていて(足はかなり細かく分かれてます)調整は多少の慣れが必要になりますが、変なことになったらアンドゥしてればだいたい大丈夫です

肘や膝の連動はやけに激しく(手首の角度をいじることが多い関係で特に肘はすごいことになりやすいです)逆間接になったり連動したせいで手首肩、足首股関節が破綻したりします
Controller_ElbowController_Knee 等も使って微調整するのですが、手首を弄れば肘があっちに、肘を弄れば肩が捻じ切れる、となかなか一筋縄では行きません
結局は移動も回転も一つの間接だけでなく関連するボーンの微調整を繰り返すことになり、腕を高く上げるポーズは肩の変形との闘いになるし、手首も間接が細いので破綻しやすく上腕との角度によっては親指の付け根辺りが飛び出したりして思い通りのポーズを取らせるのは結構手間がかかります
まぁ最終的には姦姦蛇螺とかくねくねみたいになったのをトライアンドエラーごり押しでエンジョイできるメンタルがあればどうとでもなります

ちなみに黄色のボーン(IKボーン)他のボーンに連動することが前提になっているので、弄るとわけわからんことになるので触らないようにしましょう

ボーンリセット

ボーンを弄くってるうちにどんどん収集つかなくなる場合が稀に良くあります
そうなった時には深追いせずに潔くリセットするほうが楽
全リセットのショートカットはありませんが、Alt+Rで回転リセット・Alt+Gで位置リセットなので覚えておくと修正作業するときに便利だと思います


3b:各部位のボーン

胴体部分(改造をしていないデフォルト状態のものでの説明になります)

胴体は基本的に胸の緑色のボーン Controller_Spine2 と下腹部にある NPC_Pelvis とその間の NPC SpineNPC Spine1 の4つのボーンを使って捻りや曲げを付けて行くのですが、(しつこいですが)デフォルトのままだと個人的には使いにくいです
腰の NPC Pelvis の動きに下半身は連動してくれますが、腹より上は全く連動してくれないので一番最初のポーズのアタリ付け時に少しとっかかりが難しいかも知れません

順番としては NPC Pelvis で腰の位置・角度を調節してから Controller_Spine2 と間の NPC Spine で位置と角度を微調整する形になり、本来胴体は間接(背骨)が数が多いわりに可動域が狭い部位なこともありデフォルト状態では腹部が破綻しやすくポーズによっては調整は少しだけ手間です

両腕の緑色ボーン Controller_Elbow は腕がかなり暴れるので結構頻繁に使用しますが、手首と上腕の角度によってはすごく分かりにくい場所に飛んでたり大きなボーンに隠れてたりします
※SSにはありませんが脚の Controller_Knee も膝の角度調節に使いますが、同じような挙動で飛び回るので良く見失います

NPC Thigh は太股部分の制御ボーンで脚全体の微調整には意外と重宝します
ただ、足にある Controller_Foot の位置が優先されるので、触るのは腰と足先のポーズがだいたい出来上がってから使う感じです


首・顔周辺

鎖骨に当たる NPC Clavicle はポーズを付けるときに破綻しやすい肩の調整に使います
肩は元々可動範囲がめちゃくちゃ広く現実でもかなり大きく動かす部位なのですが3Dポリゴンモデルの仕様上ポージングにおける難所になっていて鎖骨や胴体の動きで誤魔化すことが多い所です

NPC NeckNPC Head は直立系ポーズでも微妙(1~2度とかの目視で分からない程度)に角度を変えると自然な感じになると思います
鎖骨も首も大きく動かすと胴体と首メッシュの繋ぎ目が出てしまいますので注意してください


手部分(指間接可動状態)

手首に接続されている2つの緑色のボーンをメインに調節します
大きい方の TGT_Forearm で手の位置や角度を調整できますが、IKの自動補正が結構激しく回転させると肩周りや手首(と親指の付け根辺り)がすぐ破綻します
なのでまず TGT_Forearm で手の位置を大まかに合わせてから↑の胴体部分のSSにある Controller_ElbowNPC Clavicle で腕全体の形状を調整
腕を上に上げるようなポーズの場合は NPC Clavicle の調整は結構重要です
最後に TGT_Hand で手首の角度を合わせ、そこからはあちこちを微調整していくといった形になります
私個人としては肩から手首にかけてが一番難しいと思っています
綺麗に作るコツとしてはとにかく頑張ることですかね(´・ω・`)


足部分(修正済)

足は意外と弄れるボーンが多くかなり細かいポージングができるのですが、実際のところ神経質な作業をすることはあまりないと思います
基本は Controller_Foot で足首の位置 Controller_Heel で足首角度を決めてから TGT_Toe でつま先の角度(指の開き)を調整するだけでそれなりの形になります
その他では Controller_Toe(指先連動) と TGT_Foot(指先非連動) は指の根元あたり(足根小球という部位らしいです)を支点にしてカカトが連動し、さらに足全体も連動するので爪先立ち系のポーズだとこちらの角度調整から入るのがやりやすいかも知れません

脚はIK任せでもあまり違和感が出ず(たまに逆間接になる程度)接地判定も自動で行われ、大まかに足を動かしてから Controller_Knee で膝の角度を微調整するだけでそれなりに形になるので胴や腕に比べてポージングは比較的楽です


3c:レッツポージング

というわけで簡単なポーズで流れを書いてみ たのですが、はっきり言ってそこまで役に立ちそうに無かったので別エントリに分けました  → こちら(別ウインドウで開きます)
モデルにしたポーズはこれ


そしてポージング終ったのがこれです

クオリティはこの際置いといて次の書き出し作業に移ります


-4:ファイル作成-

4a:ポーズ書き出し


Aキーを押して全てのボーンを選択します(全部のボーンが青くなればOK)


どのウインドウでもいいのでヘッダの表示切り替え部で3Dビューからテキストエディタに切り替え
何も表示されていない場合は少し右にあるテキストマークがあるところのプルダウンを開いて[Text]を選択すると初期状態で出ていたテキストが表示されます


そして[スクリプト実行]ボタンで書き出し
結構上で書いた通り指定フォルダにskeleton.txtが置いてあれば数秒で完了
そこら辺の設定が間違ってる場合はエラーが出ますのでwikiを参考に正しく設定してください

書き出しが終ればBlenderでの作業は一応ここまでになります


4b:hkxファイルに変換


blender.exeがあるフォルダ(スクリプト書き換えでフォルダ指定をした場合はそのフォルダ)にzBoneKeys.txtが生成されるのでこのファイルを

Convert.batがあるフォルダ(Animation Tools N3を展開したところ)へ移動します
毎回同じ名前で生成され勝手に上書きされるのでコピペでも切り取りペーストでもどっちでもOK

移動したらConvert.batをダブルクリックしてコンバート開始

だだーっとコマンドが走って「Converting Animation to KF Format is DONE!」とメッセージが出たらコンバート成功なので、画面指示に従って適当なキーを押せば完了して窓が閉じます


Convert.batがあるフォルダにempty_new.hkxというファイルが生成されました
できた!できたよ!!あなたの、あなただけのポゥズが!!!!

実際はそこまで興奮することでもありません


4c:リネーム&レッツポージング

そんでコレをリネームしてポーズmodのフォルダにぶっこみ
例として先日upされたHalo's Poserの空きスロットに登録してみます

Halo's Poser のポーズファイルがある data\meshes\actors\character\animations\Customフォルダ に先ほど生成されたempty_new.hkxファイルを移動し[ CST46.hkx ]とリネーム
これだけで空きスロットだったHalo's Poserの6-46に作ったポーズが登録されてゲーム内で使えるようになります(新たにFNISの作業をする必要もありません)

Halo's Poserを例に取ったのは空きが多いこととファイル名がCSTxxだけなので管理しやすいこと(リネームも楽)が理由で、新しいポーズが出来たら続けてCST47、CST48...と入れて行けばいいだけです
他のポーザーなんかだとポーズファイルの並びがリストと合ってないものが多く、ポーズファイルが入っているフォルダに FNIS_xxx_List.txt ってのがあるのでそれを読んで空きスロットになっているファイル名にリネームすることになります
元ポーズを消してしまっていいなら上から順番に上書きペーストでいいですがたぶん後悔します

何言ってるかわからないですか?奇遇ですね、私もよくわかってません
まぁ私の性格と同じくらい面倒臭いってことです


そんなわけで実際にどば子さんにポーズを取って貰います

ぜんっぜん力感が無いんですけどどゆこと!?
Blenderのと見比べてもそう大きく違うわけでは無いので単純に元のポーズの完成度が低いだけっていう
スタイルが違ったり灰色人形だったりでBlenderとゲーム内でのイメージもだいぶ違うのでそこら辺は結構難しいと思います(チープなコスプレ衣装のせいもありますが)

ちなみにこのポーズ作るのにかかったのは撮影込みで1時間くらい(記事書くのは2週間くらい)
完成度を突き詰めればいくらでも時間はかかりますが少なくともこの記事を完読するよりは遙かに楽です
ポーズだけならmodとしては相当難易度は低いですし、Play指輪のショートカットを押したときにドヴァが「ふにゃ」っとオリジナルポーズを取ってくれたときはなんとも言えない達成感を感じます

かわいいキャラにポーズつけたりするだけならMMDでええんちゃうの、って話ではありますがSKYRIMでできるから楽しいんです


お疲れ様でした。是非みなさんも自作ポーズをエンジョイしてみてください

「そうじゃなくてここがわからんのやけど!」ってことがありましたら質問してみて下さい
たぶん私もわかりません