MIKOTOの使い方

はじめに

MIKOTOの本家サイト(SASAKINGDOM:http://sasakingdom.com/)は2008/02/17現在、閉鎖されています。
本体の配布は一部のユーザーさんによって代理配布され、現在でも入手が可能です。

しかし、配布されている本体にはマニュアルが付属しておらず、マニュアルは公式サイト内で公開されるのみでした。
先ほど書いたとおり、現在本体の配布はされているものの、公式サイトは閉鎖されているため現在マニュアルの閲覧が出来ません。
これではRokDeBone2がmikoto形式のメタセコファイルに対応しても活用されなくなってしまいます。

ということで、MIKOTO形式ファイルをRokDeBone2で使うことを前提としたMIKOTOマニュアルを書いてみようと思います。
結果的には本家のマニュアルの写し+αになります。ご了承くださいませ。(問題ありましたらご連絡ください。)
では手元のローカルに残ったマニュアルを元に作業を進めていこうかと思います。

いきなり省略

MIKOTOの操作パネルに関する説明は省略します。
RokDeBone2には直接は関係ないですからね。

プロジェクト:説明省略
プレビュー:説明省略

エフェクタ(変形)

MIKOTOはメタセコイアのオブジェクト名を参照して、スケルトンの定義や各種変形設定などが行われます。
オブジェクト名の変更はメタセコイア上で行ってください。

■命名規定
オブジェクト名の命名規則は次のようになっています。

[エフェクタ識別子] : [オブジェクト名] | [親オブジェクト名] - [適用ボーン名]

マニュアルでは全て半角で指定するよう推奨されていますが、全角を使ってもでも特に問題はないようです。(Ver.0.4fで確認。)
オブジェクト名以外は省略が可能です。

■エフェクタ識別子
エフェクタ識別子でメタセコイアで編集したモデルをオブジェクト単位でMIKOTOでどう処理をするべきか指示できます。

エフェクタ識別子リスト

識別子 機能備考RDB2対応
bone 3角ポリゴンとラインからスケルトン(ボーン)を構築する
bdef ボーン変形を適用する
sdef スフィリカルディフォームを適用するmkiには出力されません。△※1
select オブジェクトセレクタを適用する△※2
morph モーフィングを適用するVer0.4c以降では使用できません。×
skin スキンペーパを適用するマニュアル記載なし×

※1…RDB2ではbdefとして処理されます。
※2…RDB2ではオブジェクト単位で表示・非表示が設定できるため、オブジェクトセレクタの書式を必要としません。


■オブジェクト名
MIKOTO上でのアイテム名。


■親オブジェクト名
親オブジェクトを指示することによってオブジェクトを階層化することができる。


■適用ボーン名
MIKOTO上ではオブジェクトに座標系が関連付けされています。
省略された場合はオブジェクトに一番近いボーンが自動的に適用されますが意図しないボーンが適用される可能性があります。 これを使えばオブジェクトとボーンの関連付けを指示することができます。

エフェクタ識別子

スケルトン(ボーン)[bone]

ボーンはメタセコイア上で編集します。
MIKOTOでは指定するフォーマットで定義されたオブジェクトを 親子構造を持ったボーン(スケルトン)として認識します。

■命名規定
次のフォーマットで定義されたオブジェクトをボーンとして認識します。
bone:[スケルトン(ボーン)名]


■ボーンの定義
ボーンの定義
1つのボーンは、始点・終点・H点の3点で構成された1つのポリゴン(三角形)の形で定義される。

始点、終点、H点の定義:
辺の長い順に「H点~始点」「始点~終点」「始点~H点」と設定されます。
「H点~終点」<「終点~始点」<「始点~H点」

また、「始点~H点」の距離が影響半径として認知される。
ボーンの影響範囲内にある頂点(ポリゴン)はそのボーンの影響を受けることになる。

■スケルトンの組み方
スケルトン
終点と始点を連結して3角ポリゴンを定義することによって親子関係をもったボーンを定義することが出来る。 以上の条件さえ満たせていれば、1つの親ボーンに複数の子ボーンを持たせることも可能です。
浮動ボーン
また浮動ボーンを作るには上の図のように、親の終点と子の始点をラインで連結することによって 定義することができる。

■ボーン名の指示
メタセコイア上でボーン名を指示することができます。
ボーンとして機能するポリゴンの材質名がそのままボーン名として認識されます。
また、ボーン名の末尾に "[ ]" を追加すると、X座標の正負を調べて、"[R]" or "[L]" を追加します。左右対称なボーンに対して使用すると便利です。

■注意事項

  • ボーンの頂点は必ず「選択頂点をくっつける(Ctrl+J)」でくっつけてください。
  • 両面ポリゴンの場合、正しくボーンが生成されません。必ず片面にしてください。
  • ボーンオブジェクトを作成できるオブジェクトは1つだけのようです。「bone:」を指定できるオブジェクトは1つのみのようです。

ボーン変形 [bdef]

ボーン変形

このオブジェクトはボーン変形の対象となります。
ボーンの影響範囲内にある頂点はそのボーンの影響を受け、ボーンの位置や角度に添って変形します。

■命名規定
ボーン変形したいオブジェクト
bdef:[オブジェクト名]

スフィリカルディフォーム同様にアンカーを設定することが出来ます。

スフィリカルディフォーム(つぶれないボーン変形) [sdef]

スフィリカルディフォーム

■命名規定
スフィリカルディフォームしたいオブジェクト
sdef:[オブジェクト名]
オブジェクト名には任意の文字列を記入できます。
このオブジェクト名はアンカーのターゲット名として利用されます。

アンカー
anchor|[ターゲット名]
ターゲット名にはスフィリカルディフォームを適用したオブジェクト名を記入します。
アンカーの役目をするオブジェクトは複数必要なため、アンカーとして認識されるオブジェクトを複数用意できるように
anchor[任意の文字]|[ターゲット名]
を許可しています。
anchorabc|target
anchor123|target
もアンカーとして認識されます。

複数のアンカーを1つのオブジェクトにまとめることも出来ます。この場合は、材質名で複数のアンカーが区別されます。

■アンカーの編集
アンカー内に含まれるすべての頂点がそのアンカーと関連づけされます。
アンカーはなにかしらボーンと関連づけされているので、頂点をボーンの動きにそって移動、変形させることができます。
スフィリカルディフォームは「H点~始点」で定義するボーンの影響範囲を考える必要はありません。
アンカー
3角ポリゴンがボーンで、半透明のボックスがアンカーです。
スフィリカルディフォームしたいオブジェクトはこのアンカー内に配置することになります。
両方のボックスが重なっている部分が2つのボーンによって変形する空間になります。
この空間を作るボックスは2つのみです。3つ以上重なる空間の変形は現在サポートしていません。

アンカーとボーンは一対一対応にしてください。
オブジェクト名でアンカーとボーンを関連付けていれば確実です。
anchor[任意の文字]|[ターゲット名] - [ボーン名]

【RokDeBone2】
MIKOTOではアンカー形状は6面対以上でも使用できますが、RDB2では6面体以外の形状ではアンカーを設定できません。

【補足】
アンカーとボーンの関連付けは、同じオブジェクト名を使用すればよいと書かれた解説サイトもありますが、私の手元では再現できませんでした。 しかし、RDB2でそのファイルを読み込ませると、正常にボーンとアンカーの関連付けが行われていました。
訂正:
MIKOTOでは、アンカーとボーンに同じオブジェクト名をつけることで関連付を行うことが出来ます。
しかし、RDB2では材質によるボーンとアンカーの関連付けには対応していないようです。

オブジェクトセレクタ [select]

表示するオブジェクトを選択できるようになります。
■命名規定
デフォルトオブジェクトの指定
select:[デフォルト名]

ターゲットオブジェクトの指定
[ターゲット名]|[デフォルト名] - [適応ボーン名]

この項目はマニュアルに記載がありません。詳細は、UMEMORI★69の、
「Mikoto Tips」 - 「エフェクタ(表示) ④ オブジェクトセレクタ」
に詳しい解説が掲載されています。

【RokDeBone2】
RDB2ではオブジェクトセレクタの書式には対応していません。
しかし、RDB2ではオブジェクト単位での表示・非表示の切り替えを後から設定することが出来ます。

モーフ変形 [morph]

モーフイングのベースやターゲットオブジェクトの指定はメタセコイア上で編集します。
■命名規定
ベースオブジェクトの指定
morph:[ベース名]

ターゲットオブジェクトの指定
[ターゲット名]|[ベース名]
ターゲット数に制限はありません。

モーフィングの操作は wait control アイテムを選択すると出現するスライドコントロールで行います。
ver.4.0c以降は実装されていません。

【RokDeBone2】
RokDeBone2では対応していません。

スキンペーパ [skin]

マニュアルに記載がありません。

その他の説明は省略

ひとまずこれらの項目は省略させていただきます。

  • 編集
    • ポーズ編集
    • モーション編集
    • スクリプト
    • ログ
  • ツール
    • モーションコンバート
    • 連番 BMP 出力
  • インポート&エクスポート
    • BVHエクスポート
    • MQOエクスポート
    • MKMエクスポート
    • MKMインポート

まとめ

RokDeBone2での利用を考えるなら、sdef、select、morph、skinは使わないほうがよさそうですね。
影響度の設定は、適用ボーン名の明記、アンカーを使うならbdefを使用。としたほうがいいようです。

いまさらですが、スフィリカルディフォームってきれいに曲がりますね。RDB2にも搭載してほしいです。


さてここの情報で不足している部分は、 UMEMORI★69 に行くととても丁寧に図入りで解説してくれています。
よくわからなくなったら是非ご利用ください。