アイテムの自作(馬・鎧)

イチからアイテムを自作して自分のMODへ組み込むまでの説明です。
!注意! このページはまだ作成中です。従って、ここに書いてある内容は参考程度に留めておいて下さい。

記載されている内容は、手順がおかしかったり、作業効率が悪かったりするかもしれません。
変な箇所がありましたら、是非とも加筆修正してください。



はじめに


このページで解説する方法では馬・服(鎧)・靴といった可動する部分があるアイテムについて解説します。
ただし、モデルの作成方法については詳細な解説していません。Blender等、各モデリングツールの解説を参照してください。

用意するもの


Mount&Blade本体・ModuleSystem・アイテムを組み込みたいMOD・Python

[MODの開発-環境の準備]を読んで、MOD開発の環境を準備してください。

できれば、その環境下でアイテムの移植を試して成功していると、
以降の説明がスムースに理解できるかと思います。

Blender(3Dモデリングツール)

3Dモデリングツール造形たアイテムを、ボーン(骨格)と結合するために使用します。
また、次のBlender Exporterを使用するのに必要です。

Blender Exporter(公式ツール)

公式から配布されているMOD開発ツールです。
BlenderからTRF形式に出力する際に必要なスクリプトの他、Blenderのデータが馬と人の2種類同梱されています。
ここでは、同梱されているMount&Blade_Exporter_Human.blendからデータを出力し、ゲーム内に反映するまでを解説します。

OpenBRF(非公式ツール)

自作したアイテムをBRFファイルに変換後、マテリアル・テクスチャと関連付ける際に使用します。


アイテムを作る


Blenderでアイテムを作成する


アイテムのメッシュを作成します。
Blender以外のツールで作成したものを取り込むなど様々な作り方がありますが、Blenderで複数のメッシュを1つに纏めると
あとのTRF形式に変換するスクリプトの実行でエラーが出るようです。(回避方法不明)

Blenderでスケルトンを設定する


作成したメッシュにスケルトンを設定(Rigging)します。

BlenderからTRF形式で出力する


公式から配布されているBlender用のスクリプトを使用し、TRF形式のファイルを作成します。

Mount&Blade_Exporter_Human.blendを開くと、画面の右上にテキストエディタが配置されています。
このテキストエディタの中の、MESH_NAME SKELETON_NAME AUTOSMOOTH PATH を以下のように変更します。

MESH_NAME:出力するメッシュの名前、Blender上でメッシュを選択したときに3Dviewで左下に出てくる名前
SKELETON_NAME:出力するメッシュに対応したスケルトンの名前
AUTOSMOOTH:滑らかさの設定
PATH:出力先のパス名(ファイル名・拡張子を含む)"C:\Sample.trf"等
※円マークは、実際の環境ではバックスラッシュ(/)に対応。

変更したら、テキストエディタからAlt + P でスクリプトを実行します。

BRF形式に変換する


TRF形式のイメージを生成できたら、アイテムを追加するMODのResourceファイルにコピーし、module.iniの末尾にイメージ名を追記します。
例:load_mod_resource = NAME

次に、M&B本体を使用してBRFに変換となりますが、先に設定を変更する必要があります。
起動直後のMOD選択画面から コンフィグ->高度な設定 と進み、エディットモードを有効にします。

エディットモードを有効にしてM&Bを起動すると、TRF形式のファイルがBRFファイルに変換されます。
この時頂点数が多すぎるメッシュだとランタイムエラーを起こします。
回避方法としては、目立たない程度に頂点数を削るか、問題ない頂点数になるように分割して出力し、後でまとめて表示するようにするなどが考えられます(要検証)

起動したら、TRF形式からBRF形式へと変換されているはずです。
この時点ではまだメッシュとマテリアル、テクスチャデータと関連付けられていないため、そのまま終了します。
※変換時に、マテリアル、テクスチャが読めずに左下に警告が出ます。

マテリアル・テクスチャを設定する


OpenBRFを起動し、変換されたBRFファイルを開きます。
開いたら、Import->New Material Import->New Texture で必要なddsファイルを読み込みます。

Mesタブを選択すると真ん中にDataが表示され、Materialという項目があります。
この項目を、読み込んだddsファイルの名前に変更します。

同様に、Matタブを選択するとDataの項目が変わるので、DiffuseAの項目を読み込んだddsファイルの名前に変更します。

変更が終わったら保存します。

ゲームに反映する。


アイテムの移植と同様の手順で、ゲームに反映させます。
また、非公式ツールのMount & Blade Warband Mod Toolsを使用する方法もあります。


チュートリアル


①Mount&Blade_Exporter_Human.blendを開きます。
②オブジェクトモードでモデルが着ている服を選択し、プロパティ内に表示されているオブジェクト名を変更します。
 初期ではOB:arena_tunicBと表示されているので、ここではarena_tunic_Tutoとします。(arena_tunicBのままだと、M&Bの既存のデータと問題を起こす可能性があります。)
③画面右上のテキストを編集します。
 MESH_NAME -> arena_tunic_Tuto
 SKELETON_NAME -> skel_human
 AUTOSMOOTH -> 90
 PATH -> C:/TutorialTunic.trf
④テキストから、Alt+Pでスクリプトを実行します。
⑤例だとC直下にTutorialTunic.trfが生成されているので、追加するMODのResourceにコピーします。
⑥module.iniの末尾に、"load_mod_resource = TutorialTunic" と追記します。拡張子は不要です。
⑦Mount&Bladeを起動し、configからeditmodeを有効にします。
⑧TutorialTunic.trfを追加したMODを選択し、ゲームを起動します。
⑨BRF形式のTutorialTunic.brfがResourceフォルダに生成されます。
⑩OpneBRFでTutorialTunic.brfを開き、マテリアル、テクスチャとの関連付けを行います。
⑪以降の手順はアイテムのゲームへの導入となります。アイテムの移植を参照してください。


トラブルシューティング