[toc]本篇文章内容为解析MMD模型文件中各骨骼的实际用处

骨骼基础

位置:骨骼包括一个向量和一个原点,位置就是原点;骨骼的原点为顶点的旋转中心,和骨骼的向量一起为自身/子级提供一个旋转角度;当骨骼自身没有权重时,其定位为辅助类型骨骼,可用于处理动作,其子级将拥有更灵活的旋转方案,使子级可以围绕自身原点旋转或者父级原点旋转; 親ボーン:父级骨骼的编号,子级将受到父级的位移/旋转/缩放等全部影响; 表示先:骨骼的向量,向量的长度没有意义,向量的方向有参考意义,有默认方向值; 可参见文末Pmx的文档翻译。

RemMiku的所有表示非物理非左侧骨骼

操作中心:原点,世界中心,不影响人物;

センター组

全ての親:无权重,原点,整体移动; センター:无权重,表示身体重心,指向原点的骨骼,为腰提供旋转角度; グルーブ:无权重,与父级センター的原点很近,功能也一样; 腰:无权重,与父级グルーブ类似,限制了移动; 注:这部分的骨骼不带权重,用于辅助调整身体的整体位置;

IK组

右足IK親:所有右足IK的父级,没有控制链,位置接近原点; 右足IK:目标为右足首,控制链为大腿和小腿; 右つま先IK:目标为右つま先,控制链为脚 注:因为IK骨的父级最终指向全ての親,并不会因为带权重骨骼的移动 注:IK即反向动力学,为目标骨骼的原点指定一个理想的位置,目标骨骼的原点会尽量靠近这个位置; 注:根据上一条,IK骨的旋转没有意义,只有位置具有参考意义; 注:因为脚部骨骼有IK,在降低重心时大腿和小腿因为受IK影响而弯曲,使模型不会降到地板以下;

上半身

上半身:有权重,腰部到乳房以下的区域; 上半身2:有权重,整个胸部+脖子根部区域+肩根部区域; 首:有权重,脖子区域; 頭:有权重,整个头部非活动区域; 右肩P:无权重,与右肩重合,右肩的父级; 右肩:有权重,右肩区域; 右腕:有权重,上臂区域,权重分给了3个子级; 右腕捩(ねじ):有权重,肘关节处,下臂的父级; 右ひじ:有权重,下臂,权重分给了3个子级; 右手捩:有权重,手腕关节处,手的父级; 右手首;有权重,手掌心区域; 右ダミー:dummy,无权重,表示掌心位置; 右親指0/右親指1/右親指2/右小指1/右小指2/右小指3/右薬指1/右薬指2/右薬指3/右中指1/右中指2/右中指3/右人指1/右人指2/右人指3:有权重,指根/骨骼1/骨骼2,大拇指的原点靠近右手首;

下半身

下半身:有权重,腰部+臀部; 右足:无权重,大腿骨骼,父级为腰キャンセル右→下半身; 右ひざ:无权重,小腿骨骼; 右足首:无权重,脚骨骼; 右足D:有权重,大腿区域,父级为腰キャンセル右→下半身; 右ひざD:有权重,小腿区域; 右足首D:有权重,脚区域; 右足先EX:有权重,脚尖区域; 注:带字母结尾的骨骼有对应无字母结尾的骨骼的旋转付与,付与率为1; 注:可以手动调整右足先EX实现踮脚;

头部

舌1:有权重,舌根部位; 舌2:有权重,舌尖部位; 右目:有权重,瞳孔区域,同时受到両目的旋转影响; 両目:无权重,可控制左目和右目的旋转,

PMX文档中关于骨骼的部分

●ボーン骨骼 PMXのボーンの変形特性は属性として個別に設定可能 在PMX中可以依次对每个骨骼的属性进行修改实现不同的变形效果 □基本設定 ボーン名 : ボーンの名称 各複製処理などのKeyとなるので重複/未設定は望ましくない 親ボーン : 親となるボーンのIndex 基础设定 骨骼名:骨骼的名称,将作为复制处理时的识别标志,请不要重复/未设置; 父级骨骼:父级骨骼的编号,没有父级时为-1; □表示先(>) - ボーンの>表示の指定 ボーン : 表示先を指定のボーン(Index)の位置で設定 ※<<ボタンにより単独で親参照しているボーンを指定可能 相対 : 表示先をボーン位置から任意のオフセット差で指定 XYZ 朝向:指定骨骼的朝向 骨骼:设置当前骨骼朝向为的指定编号的骨骼的原点,可依据父级关系进行指定; 相对:设置当前骨骼朝向为指定的向量; □変形順 変形階層 : 変形順を決定する値(階層値が小さい方が先) 物理後 : ONの場合物理演算後にボーン変形を行う ※物理前/後でグループ化、各グループ内を階層→Index順で並べ順次変形します。 权重效果顺序(指定动画系统的工作顺序) 权重效果优先级:根据优先级决定权重效果被施加的顺序,值越小优先级越高。 物理后:开启后,先进行物理演算,再处理权重效果; 注:根据物理前后进行分组,每个组内再根据优先级→骨骼编号顺序处理权重效果; □性能 回転 : 回転可能 移動 : 移動可能 IK : IK用 表示 : 表示可能 操作 : 操作可能 开启的功能 旋转:是否可以旋转 移动:是否可以移动 IK:IK设置是否生效 显示:是否显示骨骼 操作:是否可以被操作 □付与 - 付与親の回転/移動量をボーン変形量に追加する属性 回転+ : 回転量の付与 移動+ : 移動量の付与 付与率 : 付与率 付与親 : 付与元のボーンIndex L : ローカル付与 付与:向被付与的父级骨骼追加变形属性 旋转:在追加的变形属性中包括当前骨骼的旋转; 移动:在追加的变形属性中包括当前骨骼的移动; 付与率:(将当前骨骼的变形属性以多少比例进行追加) 被付与的父级骨骼:被付与的父级骨骼编号 L按钮:是否启用本地付与 ※付与される変形量(付与親の変形量) 注:付与功能提供给被付与的父级的变形属性值 ■ローカル付与(ローカル付与ON) : ・付与親の現在の変形量(移動/回転量を分離して適用) 在开启了本地付与时的算法: ·被付与的父级的当前变形量,分别计算移动和旋转; 这段没看懂**,搜索“ローカル付与”有一段解释是:将付与親的变形量传递给当前骨骼; ■通常付与(ローカル付与OFF) : ・ユーザーがボーンに指定した移動/回転量 ・ボーンモーフから設定された移動/回転量 ・IK変形によるリンクの回転量 ・多重付与変形量 在关闭本地付与时的算法: ·用户指定/表情/IK/其他付与等带来的属性值; □軸制限 - 回転/移動時に任意の軸を操作軸に固定 軸方向 : 軸の方向ベクトル ※軸設定はView側のローカル軸の簡易設定機能推奨 (>ボタンにより表示先方向への簡易設定可能) 轴限制:旋转/移动时,将任意轴作为操作轴**固定 轴的方向:轴的方向的法线 轴设定可以使用>按钮进行简单设置 □ローカル軸 - ボーン操作時のローカルフレーム指定 X : ローカルX軸 Z : ローカルZ軸 ※3軸はX/Zの設定により補正される(X/Zが直交ではない場合はZが補正される) ※軸設定はView側の軸制限簡易設定機能推奨 ([>]ボタンにより表示先方向への簡易設定可能) 本地轴:指定操作骨骼时的本地框架 □外部親 - 外部からボーン親を指定する場合の識別用Key 親Key : Key値 使用外部物体作为父级 □IK - IKボーンのみ Target : IKのターゲットボーン(Index) Loop : IK計算のループ回数 (近似状態へ到達するまでの最大回数/MMDでは無視される場合があります) 単位角 : IK計算で使う単位角度[deg] Loop:每一帧中IK计算次数; 单位角:单次计算中骨骼的最大旋转角度,会逐渐接近理想位置而减小角度 Link : IKリンクボーン 追加はボーンリストからIndexコピー→Indexコピーから追加など 角度制限 : リンクの変形をXYZで制限 X/Y/Z : 各軸の制限角度[deg] [→0] : 制限角度を初期化 ○ボーンリストメニュー [追加] - [最後尾に追加] : 新規ボーンを最後尾に追加 [複製を追加] : 選択ボーンの複製を”選択位置に”追加 [削除] : 選択ボーンを削除 [上へ移動] : 選択ボーンを一つ上へ移動 [下へ移動] : 選択ボーンを一つ下へ移動 [全て選択] : リスト項目を全選択 [Indexコピー] : 選択項目をIndexコピー(ボーン系リストなどで追加可能) [名称の一括編集] : 名称一括編集を表示 [PMDボーン種類で設定] : PMDのボーン種類形式で属性値を設定 ※利用は非推奨 [CSVファイルへ保存] [CSVファイルから追加/更新] [クリップボードへ保存] [クリップボードから追加/更新] →PMXのCSV変換について ○IKLinkリストメニュー [削除] : 選択対象を削除 [上へ移動] : 選択対象を一つ上へ移動 [下へ移動] : 選択対象を一つ下へ移動 [全て選択] : リスト項目を全選択 [Indexコピーから追加] : ボーンリストからコピーされた対象を追加(Index降順に変換) ■PMXボーンタブでのIK列の作り方 1. IK対象となる列ボーン及びIKボーンを作りIKボーンのIK属性をON 2. IK移動の基準となるボーン(列の最も先)をIK枠のTargetに設定(Index) 3. 列ボーン(IK/Target以外)をリストから複数選択し、右メニュー[Indexコピー] 4. IKボーンのIK-Linkリスト上で右メニュー[Indexコピーから追加] 5. Loop数や単位角、各リンクボーンの角度制限の調整を行う ※IK列はView側から簡易的に作成する機能もあります。 [選択ボーン] - [選択状態の維持] - チェック時、ボーン選択をクリア状態にしない [子系列の選択] - 選択ボーンの子系列ボーンを全て選択状態にする(ボーン上でのダブルクリックと同処理) [左右ボーン位置合わせ] - 選択ボーンの左右ボーンが存在する場合(ボーン名から判断)、Y軸対称(X符号反転)で位置を設定。 [IKボーンを含む系列をIK化] - 親子関係で連結された一連のボーン列と任意のIKボーン1つを選択対象に含め実行すると自動でIK系列化 [多段ボーンの作成-親側] - 選択ボーンを多段化(同位置に新規の親ボーンを挟み込む)/IK自動対応/複数ボーン可能 [多段ボーンの作成-子側] - 選択ボーンを多段化(同位置に新規の子ボーンを挟み込む)/IK自動対応/複数ボーン可能 [中間ボーンの作成] - 2つ以上の系列選択ボーンに対して間に新規ボーンを作成する/IK自動対応/複数ボーン可能 [操作(付与)ボーンの作成] - 選択ボーンに対して操作用の付与ボーンを追加(既に付与親がある場合は追加しない) [非表示ボーンは剛体/Joint作成不可] - 以下の作成機能で、非表示ボーンの場合は対象にしないチェック [基礎剛体の作成 - ボーン追従] - 選択中のボーンに基礎剛体(カプセル形状の任意の大きさ)をボーン追従剛体として自動作成します。 [基礎剛体の作成 - 物理演算] - 選択中のボーンに基礎剛体(カプセル形状の任意の大きさ)を物理演算剛体として自動作成します。 [基礎Jointの作成] - 選択中のボーンに基礎Jointを自動作成します。Jointの接続に関しては適宜設定する必要があります。 [基礎剛体/連結Jointの作成] - 選択中のボーンに基礎剛体と基礎Jointを作成し親子関係のボーンに関連する剛体をJoint連結します。 [表示先方向へ軸制限] - 選択ボーンの表示先方向を制限軸として設定及び軸制限属性を追加 [表示先方向をベクトルコピー] - 選択ボーンの表示先方向をベクトルコピーに保存(フォーム側軸設定などにベクトルペースト可能) [ローカル軸の簡易設定] - 選択ボーンのローカル軸を、X:表示先方向 Z:画面奥方向で簡易設定 [ローカル軸初期化] - 選択ボーンのローカル軸を初期化