MMD Tools/マニュアル

##### モデルをクリーン

チェックすると、MMD Toolsは、不正な面や頂点をインポート前に修復します。Blenderへのインポート前にモデルを検証し、必要に応じて修復することを推奨します。

##### 重複頂点を削除

チェックすると、同じ位置にある頂点がマージされ、重複した面が削除されます。
モーフに使用されている頂点はモーフが壊れないように対象外になります。

##### ボーンをリネーム

これはボーン名をMMD標準の右/左の命名規約からBlenderで認識可能な形式(`.L`/`.R`)にリネームします。
適切なミラーリングが可能になります。
(エクスポートスクリプトでは保存された名称に自動で戻します)

##### UVテクスチャへミップマップを使用

チェックすると、MMD Toolsはモデルのメインテクスチャのミップマップを生成します。
ミップマップを生成する方法では、アーティファクトが発生する可能性があるため、無効にしたい場合があるでしょう。

##### .sph,.spaテクスチャの影響

スフィアテクスチャの影響を減らします。
影響を減らすと、除算スフィアを明るくし、加算スフィアを暗くします。
これはプロパティウィンドウの指定テクスチャの影響サブセクションでディフューズ色を減らすのと同じです。
インポートされたモデルのエクスポートには影響しません。

*(訳注: ここ動作確認できていません)*

##### ログレベルとログファイルを作成

インポート時のフィードバックの詳細度を指定します。
有効にすると、ログファイルがインポートされるモデルと同じディレクトリに`*[model file name]*.mmd_tools.import.log`の形式で書き出されます。

#### モデル: エスクポート

**TODO: モデルを変換**
MMD形式のモデルのみエクスポートできます。
もし、これが無効になっている場合は、まず*モデルを変換*を実行してください。

##### スケール

指定された拡大率をモデルの全ての要素に適用します(原点を中心)。
小さな値を指定するとエクスポートされるモデルは小さくなります。
デフォルト値は`12.5`です。

インポート時に1より小さな値で取り込んだ場合は、元のサイズでエクスポートするには大きな値を指定する必要があります。0.2でインポートした場合、エクスポートでは1/0.2を指定します。

##### テクスチャをコピー

有効にすると、モデルから参照されるテクスチャ画像がエクスポートされたモデルに関連付けられて適切なディレクトリに書き込まれます。
すでに存在するファイルは上書きされます。
*ベーステクスチャフォルダ*が指定されていても、テクスチャはそのフォルダには書き込まれません。
エクスポートパスに基づいてモデルの適切なディレクトリにのみ書き込まれます。

##### マテリアルをソート

*マテリアルをソート*が有効な場合、MMD Toolsは透過の問題を起こしにくい方法でマテリアルの並べ替えを試みます。
これは、頂点モーフや材質モーフを考慮してないので、*MMD ‣ マテリアル順序*で順序を指定するよりも信頼性が低くなります。

##### 頂点をソート

デフォルトでは、MMD Toolsは、頂点の順序に注意を払わず、適当な順で頂点をエクスポートすることがあります。
これは、MMEで使用される一部のエフェクトに影響することがあります。
インポートしたファイルからの元の順序で頂点を書き出すには、`カスタム`を有効にします。
Blenerによってソートされた順で頂点を書き出すには`Blender`を有効にします。

##### ログレベル

モデルをインポートする場合と同様です。
*ログファイルを作成*を有効にするとログファイルが出力ディレクトリに書き出されます。

##### IKのエクスポート

IKはMMDのIKの仕様上、チェーンの先(子)ボーンが必要なようです。エクスポートできなかった場合、ログファイルかコンソールにメッセージが出ています。

#### モーション: インポート

`.vmd`ファイルを一連のアニメーションキーフレームとしてBlenderに読み込むことが出来ます。
アニメーションを読み込むには、まずにインポートされたモデルなど有効なMMDモデルをアウトライナーからベース親オブジェクトを選択する(下記)などで選択します。
次に*モーション: インポート*をクリックし、適切な`.vmd`を選択します。

ボーンアニメーションはアーマチュアを選択してインポート、モーフはメッシュを選択してインポートできます。
表情がボーンモーフで作られている場合は、*MMD ‣ モデル設定 ‣ 組み立て: モーフ*でドライバを作ってから、`.placeholder`を選択してインポートできます。

モーションは、カメラオブジェクトにインポートすることもできます。
この場合、MMDカメラオブジェクトに変換されます。
カメラオブジェクト（メインの親）を選択し、適切な`.vmd`を選択してインポートします。
インポートオプションは、モデル上にアニメーションをインポートするときと同じです。

##### スケール

*Scale*はポーンの移動量に適用されます。
小さな値を指定すると動きが小さくなります。
モデルをインポートしたときのScaleと同じ値を使用することを推奨します。

##### 余白

*Margin*を指定した場合、(*Margin*と同じ数の)空フレームがインポートしたキーフレームの前に追加されます。

##### ボーンマッパー

*ボーンマッパー*は、`.vmd`のボーンをどのようにアーマチュアにマッピングするかを決定します。
`リネームしたボーン`では、モーションのボーン名は*ボーンをリネーム*を指定してモデルをインポートしたときと同じ方法でリネームされ、Blender上でのボーン名に基づいて適用されます。
`PMX`では、モーションのボーン名は、Blender上のボーン名ではなく、モデルに保存されているボーン名(MMD Bone Tools / Name)と照合されます。
`Blender`では、モーションのボーン名は、Blender上でのボーンの実際の名称と照合されます。

##### 現在のポーズをレストポーズとして処理

有効にした場合、現在のポーズがレストポーズとして扱われます。
TスタンスのモーションをAスタンスのモデルにインポートするのに便利です。

##### シーン設定を更新

有効にした場合、Blenderに`30`FPSを使うように指示します。
フレーム範囲もインポートするすべてのモーションを含むのに必要なだけ拡張されます。

#### モーション: エクスポート

モーションをエクスポートする基本的な機能が利用可能になりました。
現在は、ボーンアニメーション、シェイプキーアニメーション、カメラ/ランプアニメーションをエクスポートできますが、セルフシャドウやその他VMD固有のアニメーションはまだサポートされていません。
また以下のノートと問題を念頭に置いてください。

* Fカーブのみサポートされます。ドライバやNLAトラックはサポートされていません。完成したアニメーションを書き出したい場合は、新規アクションにベイクできます。
* ボーンの回転の補完とカメラの回転は正しくないかもしれません。MMDはすべての回転成分(x, y, z, w)に対して同じ補完を使用するためです。
* Blender上で、モデルアニメーション(ボーンとシェイプキー)をエクスポートするにはルートのエンプティを選択、ボーンアニメーションのみをエクスポートするにはアーマチュアを選択、シェイプキーアニメーションのみをエクスポートするにはメッシュオブジェクトを選択、カメラアニメーションをエクスポートするにはMMD Cameraオブジェクトを選択。またアクティブなオブジェクトのアニメーションのみがエクスポートされます。
* ボーン名は15バイト(Unicode文字で約7文字)の制限がありますがエラーメッセージはありません。ボーン名を短くすることを忘れないでください。

#### タイムライン

*現在のフレーム*、*開始*、*終了*を操作することができます。
*タイムライン*エディタと連動して動作します。

#### リジッドボディ物理演算

*サブステップ*、*反復*、*開始*、*終了*を操作することができます。
*プロパティ ‣ シーン ‣ リジッドボディワールド*と連動しています。

##### ワールドを更新

リジッドボディワールドをMMDモデルに適した設定に更新します。
もし、⚠️が表示された場合は、このボタンを押すと物理演算の問題が解決される場合があります。

##### サブステップ (サブステップ/フレーム)

1秒間に行われるシミュレーションのステップ数（値が大きいほど精度が高くなるが、遅くなる）。
これは精度にのみ影響し、シミュレーションの内部速度には影響しません。

##### 反復 (ソルバー反復回数)

シミュレーションステップごとに行われるコンストレイントソルバーの反復回数です（値が高いほど精度が高くなりますが、遅くなります）。
これを増やすと、コンストレイントとオブジェクトのスタッキングがより安定します。

##### ベイク

シミュレーションを計算し、キャッシュを保護します。
ベイクするにはオブジェクトモードである必要があります。

###### ベイクを削除

シミュレーションのベイク後に有効になります。
ベイクされたキャッシュをクリアします。

#### 可視性

MMD形式のモデルを選択すると、*可視性*サブセクションで、メッシュ、アーマチュア、リジッドボディ、ジョイント(関節)、テンポラリオブジェクト、および各名称表示を含む、モデルの要素をすばやく非表示または表示にすることができます。

#### 組み立て

##### すべて (組み立て)

*すべて*は*SDEF*、*ボーン*、*モーフ*、*物理演算*、*プロパティ*を順番に実行します。

##### SDEF

メッシュを選択して`SDEF`をクリックすると、SDEF変形を行うドライバが追加されます。
この機能を使うには*プリファレンス ‣ セーブ＆ロード ‣ Pythonスクリプトの自動実行*を有効にする必要があります。
`🗑`をクリックするとドライバは削除され元の状態に戻ります。

##### ボーン (ボーンコンストレイントの適用と解除

MMDとBlenderは異なる方法でボーンによる動きを処理します。
これらの相互変換を行うために、*ボーン*でBlenderで扱えるようにボーンコンストレントを付加、または*🗑*でMMDで扱えるように付加されたボーンコンストレントを解除します。
エクスポート時には、自動で解除されます。

##### モーフ (マテリアル、UV、ボーン、そしてグループモーフ)

*モーフ*は、Blenderで頂点モーフ以外のモーフを使用できるようにします。
*モーフ*によって、`.placeholder`という名前のメッシュがモデルに追加されます。
`.placeholder`は、頂点モーフを含むあらゆる種類のモーフをシェイプキーとして持ちます。

##### 物理演算 (リジッドボディの構築とクリーン)

ボーンと同様に、物理演算もMMDとBlenderで異なります。
物理演算の情報をBlenderで扱える形式に変換するには*物理演算*を使用します。
またMMDで扱える形式に変換するには無効化します。
リジッドボディを構築して物理演算が行われるようになるとパフォーマンスはかなり低下します。
このため、リジッドボディは必要な場合だけ構築することを推奨します。
一般的には、レンダリングの直前に行います。

#### マテリアルで分解

インポートされたモデルは、初期状態ではひとつのオブジェクトになっています。
モデルのマテリアルごとにオブジェクトに分割するには、モデルを選択し*マテリアルで分解*を実行します。
デフォルトでは、Blenderの頂点モーフデータが壊れる問題を防ぐために、シェイプキー（モーフ）は、シェイプキーの影響を受けなくなったメッシュからは削除されます。

#### 統合 (メッシュ)

*統合*は*マテリアルで分解*と逆の操作です。
インポートされたモデルを構成するすべてのオブジェクトを再統合するには、モデルに属するどれかのオブジェクトを選択し、*統合*を実行します。
モデルに存在していたすべてのオブジェクトをひとつのオブジェクトに統合します。

#### マテリアル

*トゥーンテクスチャ*または*スフィアテクスチャ*のレンダリングを有効または無効にすることができます。

##### Blender用に変換

*Blender用に変換*ボタンは、選択中のMMD形式モデルの材質設定をBlenderで扱える形式に変換します。

#### その他

##### MMD IK反復係数を変更

*MMD IK反復係数を変更*は、BlenderのすべてのIKボーン(選択されたものだけではありません)の反復に乗数を適用します。
ボーンまたはアーマチュアが選択されている場合にのみアクセスできます。
これは、エクスポートされるモデルではなく、Blenderのアニメーションにのみ影響します。

### MMD ‣ モデル製作

#### モデルを作成

このボタンは、MMD形式のモデルを正常にエクスポートするのに必要な階層構造、MMDで必須となる全ての親ボーンを作成します。
*モデル: インポート*とともにこれはMMD Toolsが認識できるMMD形式のモデルを作成する方法のひとつです。
この機能ではメッシュは作成されません。
この構造にメッシュを追加するには、*メッシュを取付*を使用します。

#### モデルを変換

MMD Tools外で作られた既存のBlenderモデルをMMD Toolsで扱える形式に変換します。（実験的）

#### メッシュを取付

この機能は、MMD形式モデルに属していないメッシュを選択中のインポートされたモデルに最後尾の材質として追加します。
この機能を使うには、任意のMMD形式モデルの任意の部分を選択して、*メッシュを取付*します。
取り付けたいメッシュを選択する必要はありません。
メッシュがすでにMMD形式モデルのどれかに属している場合は、なにもしません。(例えば、ひとつのシーンにふたつの異なるインポートされたモデルが存在する場合)

メッシュを含むMMD形式モデルに取り付けたい場合は、取り付けたいオブジェクトと対象モデルのオブジェクトを順に選択し、オブジェクトを統合(`Ctrl-J`)することも出来ます。

#### モデル手術

この機能により、以下のようなモデル編集が簡単に実現できます。

1. 頭部挿げ替え (*切断* & *統合*)
2. パーツやアクセサリの移植
3. 服のきせかえ (*はがす* & *統合*)

```

```

### MMD ‣ 表示パネル

*表示パネル*は、MMDのアニメーション処理に必要な表示枠を編集できます。
上のパネルでは、表示枠のグループの選択または作成が可能で、選択、編集、順序変更、削除作成ができます。
下のパネルには、そのグループの要素が表示され、同様に選択、編集ができます。

ボーンを選択して、そのタイプをモーフに変更するとMMDで問題が起きることに注意してください。

ボーンエントリを選択して、*表示パネル*サブセクションの*選択*ボタンをクリックすると対応するボーンを素速く選択できます。

### MMD ‣ モーフツール

Morph Toolsでは、モーフのMMD固有のパラメータを編集できます。 Blenderは、シェイプキーの形式で頂点モーフのみを維持します。しかし、MMDモーフのパラメータはインポートエクスポートのサイクルで維持するべきで、このパネルで編集できます。

モーフがまだ表示枠に登録されていない場合は、*モーフツール*の一番上のパネルのモーフの右に*ℹ*アイコンが表示されます。

### MMD ‣ リジッドボディ

このサブセクションは、選択したモデルに含まれるリジッドボディのリストを提供します。それらはこのパネルから素速く選択できます。

**TODO**:モデルにリジッドボディを追加できます。

### MMD ‣ ジョイント

このサブセクションは、選択したモデルに含まれるジョイントのリストを提供します。それらはこのパネルから素速く選択できます。

### MMD ‣ マテリアル順序

マテリアルの順序が重要な場合は（一般的に透過材質と関連しています）、材質の順序を指定できます。
これはひとつのオブジェクト内の材質をソートできます。
なので、モデルを*マテリアルで分解*した場合は使用できなくなります。

### MMD ‣ メッシュ順序

*MMD ‣ メッシュ順序*では、モデルを*マテリアルで分解*したあとのMMDモデルのサブオブジェクトを素早く選択できます。
メッシュ順序の変更は、エクスポートや*統合*を通して維持されます。
ここで指定する分割後のオブジェクトの順序が統合後の材質の順序に適用されます。

## プロパティエディタ

### マテリアル ‣ MMDマテリアル

プロパティウィンドウのマテリアルタブ内の*MMDマテリアル*サブセクションの情報を使用して、MMDで使用される材質のパラメータを変更できます。
注意として、このセクション内のいずれかのパラメータを変更すると、Blenderレンダーとエクスポートされたモデルの両方に影響しますが、Blender固有のパラメータを変更するとBlenderレンダーに影響しますが、エクスポートされるモデルには影響しません。
例えば、*MMDマテリアル*の*スペキュラーカラー*フィールドを変更するとBlenderのスペキュラー色（スペキュラーサブセクションのスペキュラー色フィールド）が変更されますが、Blenderのスペキュラー色を変更しても*MMDマテリアル*の*スペキュラーカラー*は変更されません。

輪郭線は、MMD ToolsによるBlenderレンダリングでは実装されていませんが、*MMDマテリアル*サブセクションで行われたエッジ関連の変更は、エクスポートされたモデルに影響します。
輪郭線は、*輪郭プレビュー*で確認できるようになっています。
頂点ごとのエッジ倍率は`mmd_edge_scale`頂点グループを使用します。

### マテリアル ‣ MMDテクスチャ

*MMDテクスチャ*サブセクションでは、MMDモデルのテクスチャに使用されるフィールドとフラグを指定できます。
上記の*MMDマテリアル*設定と同じように、MMD Toolsはこのサブセクションで行った変更をBlenderの他の要素に伝播しますが、その逆はありません。
つまり、*MMDテクスチャ*の*スフィアテクスチャ*を変更するとBlenderのレンダリングに影響しますが、テクスチャタブ/影響のブレンドモードを変更してBlenderのレンダリングを変更しても、*MMD Texture*設定やエクスポートされたモデルには影響しません。

*共有トゥーンテクスチャを使用*は、MMDの標準Toonを使います。

### オブジェクト ‣ MMDモデル情報

MMDモデルで使用されるさまざまなモデル固有のフィールドを編集できます。
参照: *MMD IK反復係数を変更*

### 物理演算 ‣ MMDリジッドボディ

ビルド済みまたは未ビルドのリジッドボディオブジェクトの情報が含まれます。
*MMDマテリアル*と同様に、このサブセクションの変更はBlenderの物理演算に影響しますが、Blenderの物理演算の変更はこのサブセクションには影響せず、モデルとともにエクスポートされません。

一部の変更はリジッドボディがビルドされているかに関わらず有効ですが、変更されないものもあります。このサブセクションを変更した後は、リジッドボディを再ビルドすることをお勧めします。

リジッドボディコリジョンはBlenderとMMDで仕組みが異なります。
Blenderでは衝突するリジッドボディのグループ(*コリジョングループ*)を定義しますが、MMDでは衝突しないリジッドボディのグループ(*コリジョングループマスク*)を定義します。
MMD ToolsはMMDのリジッドボディコリジョンをシミュレートするためにリジッドボディごとに`temporary/ncc*`のリジッドボディコンストレイントにより衝突の無効化を行います。
この設定はリジッドボディごとに行われるため、通常のBlender上でのリジッドボディシミュレーションよりも処理が重くなります。
この理由でリジッドボディの距離がある程度離れていると非衝突処理を行わないようになっています。
この距離は、*物理演算*の*非衝突距離スケール*にあります。
ここを適当に大きくしてリジッドボディをビルドするとすべて処理されるようになります。
PMXに出力する予定がある場合は、Blenderの*コリジョングループ*は触らずに、*MMDリジッドボディ*の*コリジョングループマスク*を変更してください。

### 物理演算 ‣ MMDジョイント

ジョイントオブジェクトの情報が含まれます。 *MMDマテリアル*と同様に、このサブセクションの変更はBlenderの物理演算に影響しますが、Blenderの物理演算の変更はこのサブセクションには影響せず、モデルとともにエクスポートされません。

### モディファイアと頂点グループ

#### mmd\_bone\_order\_override (ボーン順序再定義)

BlenderとMMDのボーンの実装の違いを扱うために、ボーンの順序はBlenderではあまり重要ではありませんが、MMDではとても重要な可能性があります。
ボーンの順序をインポート/エクスポートのサイクルで維持するために、インポートされたモデルは`mmd_bone_order_override`モディファイアを使用して生成されます。
このモディファイアがモデルに含まれるいずれかのオブジェクトに未適用で存在する場合は、MMD ToolsはBlenderで行われた変更が許す範囲でボーンの順序を復元するために、これをエクスポート時に使用します。

モデルでボーンの順序が重要でない場合は、このモディファイアを安全に削除または適用することができます。

エクスポートされるボーンの順序は、*MMD ‣ メッシュ順序*の順でオブジェクトを順に見て最初に `mmd_bone_order_override`という名前のモディファイヤがあるオブジェクトの頂点グループの順になります。
PMXでは、親のボーン順序が子より後になると問題があることがあるので、Blender頂点グループメニューの`ボーン階層でソート`で頂点グループをソートしておきます。
またIKはターゲットより上にないと正しく動作しないので、例えば足IKの階層が下半身の階層より上になるようにソートします。
頂点グループがないボーンは、ボーン順の一番下に追加されるのでエクスポートするボーンについては空ウェイトでも全て頂点グループを作ってソートしておかないとPMX Editorでの状態検証をパスできません。

#### mmd\_edge\_scale (輪郭線倍率)

MMD Toolsは、`mmd_edge_scale`頂点グループを使ってMMDモデルで使用されるエッジ(輪郭線)サイズの頂点属性を追跡します。
この頂点グループから頂点が削除された場合、または頂点グループ全体が削除された場合、MMD Toolsはエクスポート時にデフォルトのエッジサイズとして`1`を設定します。
モデルが頂点ごとのエッジサイズを利用しない場合は、この頂点グループを安全に削除できます。

#### mmd\_vertex\_order (頂点順序)

MMD Toolsは、`mmd_vertex_order`頂点グループを使ってMMDモデルで使用される頂点の順序を追跡します。
上記の`mmd_edge_scale`と同様に、頂点の順序に関心がなく、Blender内のウェイトの編集に与える影響を認識している場合は、この頂点グループは安全に削除することができます。

### シェイプキーとモーフ

MMDの頂点モーフは、Blenderではシェイプキーで表現されます。
Blender内で作成された新しいシェイプキーは、頂点モーフとしてエクスポートされます。
これらのモーフはモーフグループ4(右下)にエクスポートされます。
新しく作成されたシェイプキーは、MMD形式にエクスポートされてから再インポートされるまで、*MMD ‣ 表示パネル*のような機能からモーフとしては使用できません。

`.pmx`形式に適切にエクスポートするには、すべてのモデルで`Basis`シェイプキーが必要です。メッシュに`Basis`シェイプキーがない場合、メッシュを選択した状態で、プロパティウィンドウのデータタブのシェイプキーサブセクションから簡単に作成できます。
*+*ボタンを押して新しいシェイプキーを作成します。
`Basis`が存在しない場合、これは`Basis`として作成されます。
（これは、モディファイアを適用するためにシェイプキーが削除されたときに頻繁に必要になります）

MMD ToolsがSDEF情報を保存するために作成する3つのシェイプキー(`mmd_sdef_c`,`mmd_sdef_r0`,`mmd_sdef_r1`)が存在します。
MMD Toolsはこれらのシェイプキーを使用してインポート/エクスポートのサイクルを通してSDEF情報を維持します。
Blenderで移動したボーンはSDEF情報を更新しません。代わりにPMXEのようなアプリケーションでSDEFの重心を更新する必要があります。

現時点では、MMD Toolsは他の種類のモーフ（ボーンモーフ、材質モーフなど）は、ツールバーの編集パネルでの使用のみサポートされています。
これらのモーフはインポートされたモデルの適切なプロパティにリンクされず、インポートされたアニメーションでは頂点モーフ以外のモーフはキーフレームに登録しません。

## アウトライナー

MMD Toolsがモデルをインポートおよび作成する階層を理解することが重要になります。不適切な階層を持つモデルは、適切にエクスポートまたはアニメーションできません。

各モデルは、`*[modelname]*_arm`、`joints`、`rigidbodies`と、ときおり`temporary`を子に持つひとつのベース親オブジェクトとして構成されます。
`joints`と`rigidbodies`には、MMDと関連する(未構築の)データを保持する子要素が含まれます。
リジッドボディをビルドする場合(上記)、メインの親と`temporary`の子要素には、物理演算が有効になったBlenderに適したオブジェクトが配置されます。
デフォルトでは、ジョイントとリジッドボディのグループはプレビューに表示されません。
これらのオブジェクトは、アウトライナーパネルの右にある目アイコンをクリックすると表示できます。

`*[Modelname]*_arm`は、メッシュ、ボーン、モディファイアと頂点グループのデータを含みます。
デフォルトでは、`*[modelname]*_arm`は非表示になっていますが、子要素の`[modelname]_mesh`はプレビューに表示されます。

ボーンは、`*[modelname]*_arm`を非表示解除することで表示でき、`*[modelname]*_arm`のポーズのネストした階層に含まれます。
`*[Modelname]*_mesh`は、`*[modelname]*_arm`の別の子要素で、オブジェクトモディファイア、頂点グループとすべての材質をまとめたメッシュを含みます。
これらのメッシュは、`*[modelname]*_mesh`の子要素`*[modelname]*`にあります。
各メッシュ(材質)はまたテクスチャ画像データを子要素に持っています。

## 3Dビューポート ‣ シェーディング

### MMDシェーディングプリセット

*MMDシェーディングプリセット*では、MMDモデルにふたつの代替シェーディングスタイルを選択できます。

* *GLSL*は、BlenderのGLSLシェーディングと同じシステムを使用し、デフォルトのMMDライティングと近くなるように、半球状のライトをシーンに追加します。
* *影なし*は、陰影を無視するスタイルで、トゥーンテクスチャでのみシェーディングされます。
* *リセット*はシェーディングをデフォルトのBlenderシェーディングにリセットし、3Dビューポートのシェーディングをソリッドに戻します。

注意として、これらのシェーディングモードともに、テクスチャ画像がBlenderシェーディング下でも見つからない場合は、ピンク(紫)の警告になります。

## アドオンプリファレンス

*メニュー ‣ 編集 ‣ プリファレンス... ‣ アドオン*にある*‣ Object: mmd\_tools*の左の三角をクリックすると、バージョン情報とプリファレンスにアクセスできます。

### MMDモデル製作機能を有効化

MMDモデル製作に必要な次のパネルを表示します。

* *MMD ‣ モデル製作*
* *MMD ‣ 表示パネル*
* *MMD ‣ モーフツール*
* *MMD ‣ リジッドボディ*
* *MMD ‣ ジョイント*
* *MMD ‣ マテリアル順序*
* *MMD ‣ メッシュ順序*

MMDモデル制作をせずに利用するだけであれば、この項目を無効化することで不要なパネルを非表示にできます。

### 共通トゥーンテクスチャ

共通トゥーンテクスチャが格納されるフォルダを指定してBlenderによって適切にレンダリングされるようにできます。
通常これは`MikMikuDance_*[version]*/Data`のようなフォルダにする必要があります。(`toon01.bmp` ~ `toon10.bmp`ファイルが含まれています)

### ベーステクスチャフォルダ

*ベーステクスチャフォルダ*を指定すると、MMD Toolsは、これをエクスポートされるモデルのテクスチャの相対パスを決めるのに使用します(ベースフォルダ部分はパスから削除されます)。
例えば、`C:\texture`がベーステクスチャフォルダとして指定されている場合、`C:\texture\sphere\starry.spa`は、モデルとエクスポートディレクトリの相対パスとして`sphere\starry.spa`にエクスポートされます。
これにより、テクスチャのディレクトリレイアウトをカスタマイズできます。

### 辞書フォルダ

内部辞書の代わりにカスタム辞書を使用して名称を変換できるようにCSV辞書があるフォルダを指定できます。
辞書は翻訳機能で使用します。

### アドオン更新

最新のアドオンをダウンロードし更新することができます。
更新の際にはBlenderの再起動が必要です。

## 既知の問題と一般的な問題

### Texture Export / テクスチャのエスクポート

Blenderで生成またはインポートされたいくつかのオブジェクトは統合(パック)された画像を持ちます。 これらの画像は、常にMMDに適したファイル形式でエクスポートされるとは限りません。これにより、MMDやその他の編集アプリケーションで表示エラーが発生する可能性があります。

### Bones and Posing / ボーンとポージング

BlenderとMMDはときどきかなり異なる方法でボーンを扱います。ほとんどの基本的なボーン構造は、Blender上のMMD Toolsで適切に扱えますが(すなわちMMDと同じ)、もっと複雑な構造ではそうではないかもしれません。

MMD Toolsのデフォルトはポージング状態です。IKボーンがIKターゲットと同じデフォルトの位置に配置されていないか、またはBlenderのボーンの扱い方がデフォルトのポーズと一致しない場合、モデルは意図しない変形をする可能性があります。 この問題を回避し、メッシュが予期しない変形を起こさないようにするには、モデルをレスト位置に設定してください。 これを行うもっとも簡単な方法は、*[modelname]*\_armをクリックしてアウトライナーからアーマチュアを選択し、次にプロパティウィンドウのデータタブに切り替えます。 スケルトンサブセクションの下にあるレスト位置ボタンをクリックして、予期しないポーズを防止します。

### Custom Normals / カスタム法線

MMDモデルには、各頂点のカスタム法線データを含めることができます。 MMD ToolsはBlenderのカスタム分割法線データを使ってこれを扱います。

残念なことに、Blenderのこのデータの扱いは、頂点がマージされたときに簡単には修正できないアーティファクトを発生させることにつながります。Blenderはそれらを平均化せずにひとつまたは他のカスタム法線を採択します。頂点をマージする前に、カスタム分割法線データをクリアすることをお勧めします。

### Precision and Mirroring / 精度とミラーリング

BlenderとMMDはデータに同じ精度を使用しません\_(訳注: 座標やサイズなどの数値型の精度のこと)\_。 これは位置のわずかなズレにつながる可能性があります。これらのズレは通常小さすぎて意味を持ちませんが、ミラーリング(対称性)を壊すのには十分です。

### Export as previewed / プレビューと同じようにエクスポート

一般に、MMD Toolsはプレビューに表示されているままのモデルをエクスポートしようとします。 シェイプキーやモディファイアもです。それらは適用する必要はなく、エクスポートされるメッシュに影響します。 しかし、いくつかのケースでは、適用されてないモディファイアが適切にエクスポートされないことがあります。このケースに出会った場合は、モディファイアを適用する必要があります。 残念なことに、これには関連オブジェクトからすべてのシェイプキーを削除し、モディファイアを適用した後にベースシェイプキーを再作成してエクスポートできるようにする必要があります。

### Texture Seams / テクスチャシーム

MMD Toolsは、シームに沿って配置された頂点を複製することで、UVシーム付きの材質をエクスポートします。 自動スムーズが有効な場合、Blenderは簡単にこれらの頂点の不適切な法線を生成します。 この問題が発生している場合は、自動スムーズを無効にするか、Blenderがそれらを切り裂くたびに頂点をマージします。 （マージされた）法線が維持されている場合は、MMD Toolsはエクスポート時にそれらの分離処理をします。

*(訳注: エクスポート時にメッシュはシームで切られますが、オリジナルのメッシュは変更されないため、おそらく再インポートを繰り返すときの問題です。インポート時にRemove Doublesを指定するとモーフを壊さない方法でシームの切り目をマージして取り込めます)*

### Weight Painting and Vertex Groups / ウェイトペイントと頂点グループ

BlenderでMMDモデルを編集する主な利点のひとつは、BDEF4のウェイトを作成・編集するのが簡単なことです。しかし、注意すべきいくつかの落とし穴があります。

Blenderでは4つ以上のボーンに対してウェイトが塗られた頂点を作成するのは簡単ですが、MMDではBDEF4に制限されます。 MMD Toolsが4つ以上のボーンにウェイトが塗られた頂点に遭遇すると、影響力の最も小さいものを落としてから再正規化しますが、この再正規化は問題につながる可能性があります。 エクスポートする前に、ウェイトペインティング/ツールバー/ツールタブのウェイトツールサブセクションから合計を制限を使用し、6つの頂点グループに限定することをお勧めします。 *mmd\_edge\_scale*と*mmd\_vertex\_order*の追加の頂点グループがあることを覚えておいてください。これらの頂点グループのデフォルトロックは、制限された合計数にカウントされないようにしなければなりません。 これらの頂点グループのひとつまたは両方を削除した場合は、その制限数を適切に調整します。

また、Blenderでは正規化されていないウェイトも簡単に作成できます。 頂点グループ数が適切に制限されていれば、MMD Toolsはこれらの重みを適切に再正規化しますが、手動で正規化することをお勧めします。 残念なことに、*mmd\_edge\_scale*と*mmd\_vertex\_order*のデフォルトロックは、Blender 2.77のすべてを正規化ツール(ウェイトペイントツール/ツールタブ/ウェイトツールからアクセスできます）に加えて処理することを防ぎません。Blenderでウェイトを正規化する必要がある場合は、これらふたつの頂点グループを削除する必要があります。

### Rigid Body Animation / リジッドボディアニメーション

Blenderで生成されたリジッドボディは、インポートされたモーションに適応するのにいくらか時間が必要になることがあります。 これは、とりわけインポートされたモーションの原点がモーションがインポートされるモデルの原点と大きく異なる場合に当てはまります。 インポート時のパラメータ*マージン*を使用すると、メインのアニメーションが始まる前にリジッドボディにゆとりを与えることが出来ます。

(訳注: 物理演算がレスト位置から始まるため、全ての親ボーンを1フレーム目で動かすモーションなど、初期のポーズに大きな動きがあるモーションでは、初期ポーズになるまでの間にリジッドボディが高速に動き過ぎて破綻します。*マージン*を広めにして初期ポーズまでゆっくり移動させると防げます)

### Pasting Flipped Poses / ポーズの反転ペースト

Blenderでポーズを反転して貼り付けると、ボーンの名称が不適切にリネームされることにつながります。 今のところ、ポーズを反転して貼り付けるのは避けてください。 これが受け入れがたい場合は、Renamed Bonesをチェックしてモーションをインポートすると問題が解決されることがあります。

*(訳注: ここでのボーンの名称はBlenderのボーン名ではなくMMDボーン名です。MMD Toolsはポーズボーンにこれらの情報を持っているためポーズを反転コピー(Shift+Ctrl+V)するとMMDボーンの情報が反対側へ移動して壊れます。モデルをエクスポートする予定がない場合は、気にせずモーションのインポート時にRenamed Bonesを使えば問題ありません)*

(訳注: 3DView下のヘッダーにある<=>ボタンをクリックすると、問題を起こさずにポーズの反転ができるようになりました)

### ボーンモーフに使用されているボーンのコピーとマテリアルモーフに使用されているマテリアルのコピー

ボーンモーフでは、MMD Tools内部のIDでボーンが識別されています。すでにIDが割り当てられているボーンをBlender上でコピーするとIDもコピーされ重複します。IDが重複している場合、Morph ToolsのBone Offsetsでボーンが選択できなくなります。またMMD Bone ToolsのIDフィールドに警告アイコンが表示されます。

IDの重複を解消するにはMMD Bone Tools上でコピー側のボーンのIDを-1に設定して下さい。IDが-1の場合は、ボーンモーフ等で使用される際に重複しないIDが新たに割り当てられます。

またマテリアルモーフとマテリアルにも同様の問題があります。

### Lat models / Lat式モデル

Lat式モデルは、複数の透過レイヤーを使用して非常に漫画的な外観に設計されています。 デフォルト設定では、Blenderで正しく表示されません。 プロパティシェルフのシェーディングサブセクションで裏面の非表示を有効にし、プロパティシェルフの*MMD subsection*の*Shadeless*を有効にすることで、好ましい結果が得られました。

### Shared Toons / 共有Toonマップ

共有Toonマップ(典型的なMMDモデルでは、**Toon01.bmp**から**Toon09.bmp**)を適切にレンダリングするには、ユーザー設定を変更する必要があります。

### Improper display of Japanese language / 不適切な日本語表示

MMD Toolsは現在、MMDモデルの各要素に日本語の名前を使用していますが、日本語の文字を適切に表示するには、Blenderの設定を変更する必要があります。 これを行うには、ユーザー設定ダイアログのシステムタブに移動し、国際フォント(ローカライズ)を有効にします。

### UV Morphs / UVモーフ

MMD ToolsはUVモーフオフセットデータをUV\_[モーフ名][軸]の頂点グループに格納します。軸は{'+X', '-X', '+Y', '-Y', '+Z', '-Z', '+W', '-W'}のいずれかです。 MMD Toolsで通常の方法でUVモーフを編集するには、チュートリアルモーフの作成と編集方法を参照してください。

### Rigify

MMD Toolsは、Rigifyアドオンを使用してMetarigからリグを生成するときにエラーを引き起こす原因となるカスタムボーンプロパティを作成します。 エラーを防ぐには、MMD Tools操作パネルでBone Constraintsの[適用]/[クリーン]をクリックするか、Rigifyを使用するたびにMMD Toolsを無効にしてください。

### Registering frames for morphs other than vertex morphs / 頂点モーフ以外のモーフのキーフレーム登録

MMD Toolsは、適切に名前が付けられたシェイプキーが存在する場合にのみ、インポートされたアニメーションからモーフをフレームに登録します。 あらゆる種類のモーフをフレームに登録したい場合で独自のドライバを作成する場合は、それらの登録を捕捉ために適切な名前のシェイプキー（おそらくベースシェイプキーのただのコピー）を作成することを検討してください。

他のプロパティのためにドライバのシェイプキー登録を使う方法については、https://blender.stackexchange.com/questions/42390/how-can-i-set-a-shape-key-value-to-be-a-drivers-variable を参照してください。

### いくつかのシェイプキー(頂点モーフ)がエクスポートされない

シェイプキーの値を0→1に変えたときにモディファイアの影響で頂点数が変わる場合にオリジナルのメッシュとの頂点数の不一致エラーによりエクスポートが失敗します。ベベルやサブディビジョンサーフェスなどによって頂点数が変わることは問題になりません。シェイプキーの状態によって頂点数が変わるという部分が問題になります。シェイプキーによる頂点の移動はモディファイアスタックよりも前に実行されるのでこの問題が発生することがあります。 例えば、ミラーモディファイアのマージオプションにチェックが付いている状態で中心の頂点がシェイプキーによって動くと、シェイプキーの値によって中心の頂点がマージされる場合とされない場合の2通りのメッシュが存在するなどです。 エクスポートに失敗したシェイプキーはログファイルで確認できます。

### 2.9系でのリジッドボディシミュレーション

2.9系では、リジッドボディワールドの設定が変更されたのが原因で、MMD Toolsでインポートしたリジッドボディがうまく動かないことがあるようです。 `シーンプロパティ > リジッドボディワールド > サブステップ/フレーム`を1か2にすると、2.8系に近い動きになります。

（2.8系では、`サブステップ/秒`だった設定項目が2.9以降で`サブステップ/フレーム`に変更されています。またデフォルト値が`サブステップ/秒=FPS (サブステップ/フレーム=1)`から`サブステップ/フレーム=10`に変更されています。）

### MMD Toolsで独自のシェーダーを使う（エクスポートにMMDマテリアルも使う）

独自のシェーダーをMMD Toolsで使う方法としてMMD Toolsがマテリアルに使用するMMDShaderDevとMMDTexUVグループノードを編集してスタートアップファイルに保存する方法とMMDShaderDevの出力をシェーダーミックスなどに接続してMMD Toolsがマテリアル出力を切り替えるのを防ぐ方法があります。

#### MMDShaderDevを編集する

MMD ToolsはMMDShaderDev、MMDTexUVという名前のグループノードがあれば新規に作成せずそれを使用します。 MMD Toolsが使用するシェーダーの置き換えが出来ます。

まずMMDShaderDev、MMDTexUVを編集する用のプロジェクトを作りノードを編集します。

1. 新規作成
2. ノードの編集・確認に使うMMDモデルをインポート
3. シェーダーエディタを開きMMDShaderDev、MMDTexUVをタブキーで編集モードにして中身を編集
4. 保存

例としてMMDShaderDev内のディフューズBSDFを放射シェーダーに置き換えて、MMDTextUV内のマッピングノードの回転をY=-17 Z=37に置き換えました。

次にスタートアップファイルに作成したMMDShaderDevとMMDTextUVをアペンドとして上書き保存します。

1. 新規作成
2. ファイル > アペンド > 作成したプロジェクト > NodeTree > MMDShaderDevとMMDTextUVを選択してアペンド
3. ファイル > デフォルト > スタートアップファイルの保存

この後で新規に作成したプロジェクトでは変更したMMDShaderDevとMMDTextUVが使われるようになります。 制限は、グループノードの入出力をMMDShaderDevと同じに保つことですが、MMDを目的にすると同じになるのではと思います(入力を増やすのは問題ないと思います)。

戻したい場合は、アウトライナーで独立データを表示してノードグループを削除してからスタートアップファイルを再保存します。

#### MMDShaderDevの接続先を変える

MMDマテリアルを変更した時にMMDShaderDevの出力が他のノード(通常はマテリアル出力)に繋がっていなければマテリアル出力に再接続されますが、何らかのノードに繋がっていればマテリアル出力への接続は変更されません。 MMDShaderDevの出力をシェーダーミックスに接続し独自シェーダーとのスイッチに使うことでMMDShaderDevがマテリアル出力に再接続されるのを防げます。

この設定はマテリアル毎に行う必要があります。またBlender内でしか保持されないのでPMXするから再インポートするとデフォルトのノード構成に戻ります。

## MMDとBlenderの用語対応

モーフ
シェイプキー
材質
マテリアル
照明
ライト
剛体
リジッドボディ
この記事はあなたの編集を待っています！！**編集** ボタンをクリックして、知っていることを追加しましょう！書きかけの記事については**書きかけのページについて**へ