2022年に有志による新MODツールが登場し、本記事の内容はほぼ全て不要となりました。
抽出ツール「ffxvScout」や「Noesis」も不要、Blenderでの細かな設定も不要となってるので是非乗り換えてください。
関連記事:PC版『FF15』革命的なMOD管理&MOD作成ツール『Flagrum』の使い方
-2022/6/21
2018/6/8に『FF15』(FFXV / FINAL FANTASY XV / ファイナルファンタジー15)WINDOWS EDITIONの公式アプデ&公式MODツールが配信されましたが、その影響で今まで紹介してきたCheat Tableが使えなくなっています。以下のような状況です。(19/3/25公式アップデートによる影響)
・「ffxv_s_REVISED.CT」(空チョコボ等いろいろ)←更新されましたが下のCTと競合します
・「ffxv_s u17.CT」(ゲスト追加等)←19/1/2付のものが使えますが上のCTと競合します
・「ffxv_riot_character_mods-1.12.CT」(モデル変更) ←以前から使えません
・「ffxv_s_DrummerIX.CT」(任意アイテム取得等)←19/4/30更新されました
・「FFXV-NG+_[V3.0].CT」(敵強化・レベル解放)←以前から使えません
・「FFXV hard difficulty_Steam Version.CT」(敵強化)←使えます
とはいえ公式MODツール「MOD ORGANIZER」が配信されたのは素晴らしいことですね!
steamワークショップを見ると半日足らずで10個以上のMODがアップされています。
-2018/6/8
続き:PC版『FF15』3Dモデルど素人がMODを作成してみる2
1.サンプル衣装作成
というわけで、ここから「MOD ORGANIZER」を使って、3Dモデルど素人(用語も意味不明レベル)の私がMODを作成してみる過程を記録として残していきます。ど素人なのでさすがに3Dモデルを作成するつもりはありません。
最終的には内部データを使ってキャラや武器を置き換えたい(できればアンブラで)というのが目標ですが、なにしろ、スキルもねぇ!時間もねぇ!おまけにセンスも全くねぇ!という感じで作れない可能性が高いのであまり期待しないでください。
まあ失敗の記録も意味はあるとは思います。以降はキャラを置き換えることを主目的とした手順ですので衣装MODに関しては異なる可能性があります。
[18/11/24追記]
本記事は試行錯誤しながらの記録になってるので、Tsukaさんの作成ガイドの方が順序よくまとまってます。
Tsukaさんのブログ:衣装MOD作成ガイド?
1.1 サンプルモデルを見てみる
まずは、以下のリンクから「MOD ORGANIZER」(steam版)をインストール。
FINAL FANTASY XV WINDOWS EDITION MOD ORGANIZER
「MOD ORGANIZER」を起動し、上部の「ヘルプ」から「サンプルフォルダーを開く」を選ぶといくつかのサンプルがあります。
解説ページにあるように「.fbx」を用意する必要があるようですが、そもそも「.fbx」自体がどんなものか分からないので、とりあえずダブルクリックで開いてみます。
Windows標準の3Dビューアーが起動し、3Dペイントを選ぶとこんな感じで3Dモデルに落書きできました。が、このまま保存して「MOD ORGANIZER」でビルドしてもゲームには反映されません。理由は後述。
あとは、「sample.txt」によるとマルチプレイ用の衣装が男女2種類ずつあるのに全部ケニークロウになっています。
一応男女で体のラインが違って、それぞれ細身と太らせた衣装の4種のようですが、正直スクショ撮って連続で見ないと違いが分かりませんでした。
⇒後にアバターでの体型変化用のモデルであることが分かりました。
1.2 サンプル衣装を作ってみる
上記のサンプルを使って衣装を作ってみます。
使い方は公式解説ページがあるので省略しますが、画像のように適当に入力し、ステータスは基本最大HPに振りました。(グラディオだけ力に振った)
ビルドして『FF15』を起動し、MODメニューから作ったサンプル衣装を全て適用します。
ちなみに、ビルドするにはfbxファイルをアセットフォルダ(ビルド用の作業フォルダ)に入れる必要があるので、結構サイズ大きくて容量食うのでビルド後は消しておきましょう。
ノクトとプロンプトはそれなりに形になっていますが、グラディオとイグニスははみ出してました。
身長差によるものは仕方ないとしても体形の近いノクト以外はかなりモデル崩れますね。
モデルのサンプルですが、衣装にも適用できてしかもモデルがほとんど崩れません。
一応これでゲーム中に変更できる衣装が各キャラ3着ずつ追加できました。(エピソードDLCには衣装は追加されない)
ここで注意事項ですが、自分で作ったMOD衣装を装備した状態でセーブし、「MOD ORGANIZER」からそのMOD衣装を削除するとセーブデータがバグります。(たまたま発生したので条件は違うかもしれません)
①グラディオにMOD衣装サボテンダーを装備してセーブ。
②MOD衣装削除。
③ノクトのサンプルMOD衣装2種(サボテンダー&ケニー)適用してロード。
この時点でグラディオがサボテンダー衣装のまま(中身はノクト?)だったり、ノクトにモデルMOD(2B)を適用するとグラディオも2B(中身はノクト?)になっていました。メニュー画面からはグラディオを選ぶことができなくなります。
この状態で誰かの衣装を変更するとノクトが増殖しました。
モデルMOD適用していてもケニー衣装を選ぶとケニーが優先されるようです。
増殖したキャラはセーブ&ロードで消えて、ノクトのMOD衣装を適用せずにロードしたらグラディオは正常に表示されました。
とはいえ、セーブデータが壊れる可能性のある致命的なバグなのでそのうち修正されると思います。(ちょっと遊べそうなので再現できるセーブデータは一応保管しておきました)
他のバグとして以下のようなものがあります。[18/6/14追記]
・公式モデルMOD(NPC用)6種を適用するとモデルメニューで7個以上の枠が表示される。
・上記の状態でゲーム内メニュー画面からMODメニューを見るとさらに多くの枠が表示される。
・MOD武器を仲間に複数装備させると正常に反映されない。
・MOD衣装に割り振ったパラメータが5倍(?)の値で反映される。
・戦友のキャラクリ調整幅が増えた(?)のか、キャラクリ後にモデルが崩れる。←治った
1.3 FF15対応モデルビューアで見てみる
なぜ、モデル崩れが起きたり、サンプル衣装ではなくサンプルモデルであるサボテンダーを衣装化できたのか?
理由は不明ですが(各キャラ用にサイズ調整が必要であることが後に判明)、サンプルのfbxファイルをFF15対応のモデルビューアーで見てみました。
以下のソフトを使います。
Noesis(3Dモデルビューアー)
ダウンロードして解凍後、exeから起動してサンプルfbxファイルを開いてみます。
テクスチャは表示されませんが公式解説にあるようにボーン(骨)が設定されています。(ビューの下の赤いボタンでボーン表示)
公式解説ページには衣装モデルの作成に関して全く説明がないですが、こちらもボーンが設定されていてサボテンダーよりも複雑ですね。モデルMODにも適用できるようです。(他の方の投稿で確認)
ちなみに、グラディオ衣装をこのビューアーで開くと体操みたいなアニメーションが設定されてました。
あと、1.1項で最初に3Dペイントで保存したfbxファイルを見てみるとボーンがなくなっていたので、使えない理由が分かりました。
ここまでで考えたこと。
・ワークショップや色んな投稿を見る限りMODモデルはサイズに制限がなさそう。
・本来のモデルより小さい衣装はボーンが競合して(?)モデルが崩れる。
・本来のモデルより大きい衣装は単純なボーンでもほぼきれいに反映される。
・基本的には本来のモデルのボーンに沿って動作するはず。
⇒『FF15』から抽出したモデルを少し大きくすれば全て衣装化できるのでは?
-2018/6/12
2.モデル抽出&変換
続いて、海外有志の方がまとめてくださっている以下の情報を参考に『FF15』内からモデルデータを抽出します。サンプルモデルを使って色々変更したい場合は読み飛ばして3項参照ください。
2.1 モデルデータを抽出してみる
モデルマップを見ながら、「FINAL FANTASY XV\datas\character\nh\nh10」のアラネアモデルを抽出してみます。
「model_020」フォルダを見てみると、「.earc」という拡張子のファイルばかりですが、これが『FF15』独自の格納フォーマットとなっていて、そのままでは何もできません。
そこで、earcを展開する以下のツールを使用します。展開して「ffxvScout.exe」を起動すれば使い方は難しくないと思います。
PROJECT EARC (ffxv Scout)(earcファイルからの抽出&リパッケージ)[20/8/27リンク貼り直し]
これを使って、「FINAL FANTASY XV\datas\character\nh\nh10\model_020」内のearcを選択してみると中身が見えるので、モデルフォーマットであるらしい「.gfxbin」と「.gpubin」をとりあえず抽出してみます。(「model」直下にない場合は同列の「entry」や上位フォルダの「common」にあったりします)
1項で使ったNoesisは「.gfxbin」に対応しているようなので開いてみると、
Noesisはファイル変換機能もあるのでfbx形式で出力してみましたが、出力されたファイルにはボーンが設定されてないようで、MOD ORGANIZERではビルドできませんでした。
2.2 モデルを置き換えてみる(失敗)
本項は脱線してるので読み飛ばしてOKです。
[20/5/27追記]ffxv Scoutを使ったearcファイル置き換え方法のチュートリアルがあったのでこちらを参考にしてください。
Simple Scout Tutorial
抽出したファイルを「nh10_000***」にリネームして、earcファイルにリパッケージすれば、本編のアラネアモデルを冬服モデルに置き換えできるのではと考えました。
リパッケージはffxv Scoutの「Create Archive」タブでファイルを追加して出力すればOKです。
こんな感じで、追加したファイルは一つずつ赤枠のCompressedにチェックを入れて圧縮するとだいたい同じサイズのearcファイルが出来上がります。
同じ要領で「materials」フォルダと「sourceimages」フォルダからも全て抽出&リネーム&リパッケージして「FINAL FANTASY XV\datas\character\nh\nh10」の「model_000」フォルダ内を置き換えます。
これで『FF15』を起動してみると・・・アラネアはゲーム内から消えました。
透明の状態で存在はするようですが、キャンプでトレーニングしても姿は見えず、攻撃することもされることもできなくなってます。
確かにこんな単純に置き換えできるなら、すでにNEXUSにアップされていたり、他のキャラに置き換えできてもおかしくないですしね。
この確認で結構時間とられました。
2.3 テクスチャを抽出してみる
脱線してすでに全て抽出&リパッケージしましたが、テクスチャは「FINAL FANTASY XV\datas\character\nh\nh10\model_020\sourceimages」のearcファイルから抽出します。(「materials」フォルダには高解像度版テクスチャがあったりします)
抽出したテクスチャは全て「.btex」ファイルとなっていて、『FF15』独自のテクスチャフォーマットのようで、このままでは中身を見れません。(以降はearc置き換えMODについてなので「sourceimages」の抽出が終わったら読み飛ばして2.4項に進んでOKです)
というわけで以下のソフトを使います。(PROJECT EARCの作者が18/6/12に公開、18/6/15アプデ)
BTEX to DDS
解凍した中身の二つのファイルを変換したいbtexファイルのあるフォルダにおいて実行すると、全てのbtexファイルがddsファイルに変換されます。(dds形式が誤っている場合は後述のQuickBMSで変換する)
変換後は二つのファイルを「ffxvScout」フォルダにでも置いておきましょう。
この「.dds」ファイルはフォトショップ等で編集できるようですが、フリーの「Paint.NET」では開けなかったため一旦保留。(たぶん今後も編集しません)
再度脱線しますが、編集後のddsファイルをbtexファイルに戻すには、まず下のリンクから「QuickBMS」と「.BTEX Conversion to DDS (DX10) for QuickBMS」をダウンロードします。(リンク先のXeNTaXではユーザー登録が必要ですが次の記事に全部入りダウンロードリンク貼ってます)
Unofficial Primer & Tools(リンク切れ)
解凍した「quickbms」に「ffxv_btex2dds.bms」と「reimport_dotmode.bat」を入れておきます。
このQuickBMSが使い方にかなり癖があり、とりあえず私ができた方法は、
①編集後のddsファイルと変換前のbtexファイルを同じフォルダに置く。
②「reimport_dotmode.bat」(exeに引数を渡して逆変換させる)ダブルクリックでQuickBMSを起動。
③最初にスクリプトとして「ffxv_btex2dds.bms」を選択。
④変換ファイルとして、変換前のbtexファイルを選択。
⑤出力フォルダはそのまま。(変更しても上手く行かない?)
これで変換前のbtexファイルの作成日時が更新され、ddsファイルから変換されているはずです。(これができるのにかなり時間がかかった)
あとはearcファイルにリパッケージしてやれば、NEXUSにあるようなリカラー&リテクスチャMODはできると思います。
ちなみに、上のリンクを辿って「.BTEX Script for Noesis (Windows Edition .BTEX only)」をダウンロードし、「\noesisv4296\plugins\python」にダウンロードした「tex_FFXV_PCbench_btex.py」を入れるとNoesisでbtexファイルを見ることができます。
[18/7/19追記]Noesis v431からプラグイン不要になりました。
リカラーする場合はこれで中身を確認して、該当ファイルだけdds変換した方がいいかもしれません。
脱線しまくってかなり時間かかってしまいましたが、次項からようやく3Dモデリングソフトを使ってみます。フリーで有力だと考えているBlenderだとゲーム内夜間に発光するようなので他にいいのがないか調査中です。
-2018/6/14
2.4 ボーンを抽出してみる [18/6/20追記]
2.1項で抽出した「.gfxbin」と「.gpubin」にはボーンが存在しません。
ボーンは別ファイルを参照しているようなので抽出して正しく配置する必要があります。(めちゃくちゃ検索した)
アラネアの場合は「FINAL FANTASY XV\datas\character\nh\nh10」直下の「autoexternal.earc」内にある「nh10.amdl」がボーンの情報となっています。
ない場合は「entry」フォルダやさらに上位の「common」フォルダ内のearc内にあったりします。またファイル名が違う場合があるようでnh10.amdlのように「フォルダ名.amdl」にしてください。
抽出したファイルをこんな風に配置して(各modelフォルダには.gfxbinを入れる)、Noesisでgfxbinを開いてみると・・
無事ボーンが表示されました!
アラネアに限らずですが、各キャラの.amdlファイルにはそのキャラの全ての衣装のボーンが存在しているようですね。
これを使って4項でモデルを作成していきます。
-2018/6/20
3.3Dモデリングソフト
3Dモデリングソフトを使うにあたって、Blenderは夜間発光問題があったのと、初心者には敷居が高いという情報も見かけたので、どうせなら他のソフトを使ってみようと思いました。
色んな記事を検索すると、『FF15』は「Maya」(Autodesk社の有料ソフト)を使っているようなので、Mayaと親和性がありそうでfbxの入出力ができ、かつフリーのものを探します。
3.1 DAZ Studioを使ってみる(失敗)
失敗してるので本項は読み飛ばしてOKです。
条件に合いそうなソフトで「DAZ Studio」というソフトがありました。
無料でfbxの入出力はできるようですが、3Dモデリング(造形そのもの)はできないようです。
私の場合は、モデリングはできなくてもボーンの設定ができればよかったので、とりあえずインストールしてみます。
インストール自体がかなり面倒で色んなサイトを参照しながらなんとかインストール完了。
早速fbxを読み込んでみますが、こういうときの鉄則としては「正常動作するものを使用する」ということで、サンプルのサボテンダーモデル(mo00_001.fbx)を読み込んでみます。
結果は・・・何も表示されない!
本当はfbx出力してビルドまで試したかったのにこれじゃ使えません。。(使えないのでスクショもなし)
一応、抽出したアラネア冬服モデルのfbxも読み込んでみたところ、こちらは表示されますがモデルサイズがめちゃくちゃ小さくインポートされてしまいました。
というわけで「DAZ Studio」は諦めました。
そうこうしているうちに海外掲示板でBlenderの夜間発光を改善できそうな書き込みをみつけ、これを使うことで発光しなくなったという報告を頂いたので、他のソフトを試すのは辞めて次からはBlenderを使ってみます。
海外掲示板の書き込み(下の方からリンク先のスクリプトを使ってfbx出力する) https://www.mognetcentral.com/threads/final-fantasy-xv-modding-discussion.9447/page-2
-2018/6/15
3.2 Blenderを使ってみる
早速以下からダウンロード。バージョンはv2.79bです。最新はv2.8らしいですが2020/2/3付けの情報でv2.79b推奨とのことです。
Download Blender
インストール後に最初にやったことは以下です。Blenderは解説サイトも多いので調べればすぐ見つかると思います。
・各ウィンドウ(正しくはシェルフ)の名前と役割を把握(細部は分からないときに調べる)
・UIを日本語化(初見の用語ばかりなので日本語で検索したい)
・操作方法をMaya化(なんとなく)
・3Dビューを適当にぐりぐり動かす(操作慣れのため)
・起動時のウィンドウサイズを変更(フルスクリーン起動は嫌なので)
準備できたので早速サンプルのサボテンダーモデル(mo00_001.fbx)を読み込んでみます。
左上の「ファイル」→「インポート」→「FBX」からサボテンダーを選択すると、
訳分からない状態で体から何か飛び出していますがこれがボーンのようです。また、公式のMOD作成ガイドラインの座標系とも違う上に、テクスチャが貼られてないように見えます。
これをそのままFBX出力してもビルドできないことは確認しました。
ということで、まずは座標系を合わせる必要があるようです。
ここからの手順はモチさん(@mctr_39)のこのツイートが非常に参考になりました(というかなかったら無理でした)。ありがとうございます!
~FBXインポート~
ファイル選択時のインポート設定は以下の通り。
「メイン」タブ
①初期値のまま(Blender用に座標変換しているっぽい)
②アニメーションは不要(サンプルグラディオをインポートするとめちゃくちゃ時間がかかる)
「アーマチュア」タブ(アーマチュア=Blenderにおけるボーンのまとまりを意味する)
③赤枠の通り(初期値はY軸、X軸となっている)
この設定でサボテンダーモデル(mo00_001.fbx)をインポートすると、
色々と表示変えていますが、中央にあるのがボーンで上手くインポートできたようです。(手の平の骨組みがしっかりしていればOK)
赤矢印からマテリアルを選ぶとテクスチャも表示できました。
また、ボーンの周囲に8体のサボテンダーモデルがあるのはいくつもモデルが重なってたのを動かして見やすくしたものです。
赤枠内に選択中のオブジェクトネーム「〇〇_LOD5」と記載があり、公式によると「LOD(Level of Detail)とはシーン内でモデルとカメラの距離に応じてモデルの詳細度を切り替えること」らしく、元々はNPC置き換え用のMODモデルなのでLODが8段階設定されていたということですね。
サボテンダーモデルを3Dペイントなどで見ると左肩が不自然な形だったのは低LODのものが表示されていたということで一つ謎が解けました。
なので、低LODのモデルは全て削除して、次はエクスポートしてみます。
~FBXエクスポート~
エクスポートには事前準備が必要です。
BlenderからのFBX出力ではテクスチャをfbxファイル内部に格納できないようなので、ますはテクスチャを抽出します。
①テクスチャが貼ってあるオブジェクトを選択。
②右側の「テクスチャ」タブ(ボタン)を選択。
③テクスチャを選択。
④「ソース」ボタンを押してテクスチャを抽出。(※)
抽出したテクスチャは手動作成した「texture」フォルダに入れ、「texture」フォルダをインポートしたfbxと同じフォルダに置きます。(ここは人によるかもしれません)
⑤「ファイルブラウザ」ボタンを押して、抽出したテクスチャを参照するよう選択。
※テクスチャ抽出はこちらのソフトで一括でできます。(以降使わないので使い方は省略)
FBX Converter Archives
これでようやくエクスポートできます。
左上の「ファイル」→「エクスポート」→「FBX」からのエクスポート設定は以下の通り。
「メイン」タブ
①初期値のまま(背中側に倒れて側面方向に180度反転して公式の座標系と合う)
②アーマチュアとメッシュにチェック(その他も一応チェック)
③パスモードは事前準備のフォルダ構成が私と同じなら初期値でOK(おそらく相対パスで出力されて出力先フォルダ内の「texture」フォルダを参照する)
「ジオメトリ」タブは変更なし
「アーマチュア」タブ
④赤枠の通り(インポート時と同じで考えても分かりません、リーフボーンも不要)
「アニメーション」タブ
⑤ベイク済アニメーションのチェックを外す
あとはインポートしたfbxと同じフォルダに出力すれば、出力したfbxファイルに「texture」フォルダ内のテクスチャが関連付けされています。
それでは、実際にビルドしてみます。
こんな感じで、「MOD ORGANIZER」のアセットフォルダにfbxファイルと「texture」フォルダを入れてビルドしてみると・・・
無事ビルド成功し、Blenderから出力したサボテンダー衣装がゲームに追加されました!
例の夜間発光も再現できてますね。
画像はありませんがモデル崩れも全くなく、1項のサンプルモデルをビルドしたサボテンダー衣装と全く同じサイズ・動作・質感でした。
この夜間発光を回避するには、3.1項のリンク先からダウンロードした「export_fbx_bin.py」を「C:\Program Files\Blender Foundation\Blender\2.79\scripts\addons\io_scene_fbx」に置き換えて(元のファイルは念のためバックアップ)Blenderを再起動すればOKです。
ちなみに、以下のファイルをREADME通りにインストールすれば、Blenderに『FF15』用のFBXエクスポートメニューが追加されるようです。(私は使ったことない)
io_scene_ffxv_fbx.zip
[追記]マテリアルのシェーディング 周囲(Ambient)が「1」になってるのが夜間発光の根本原因らしく、「0」にすればおそらく改善します。ただ、blenderでの初期値が「1」なので.pyファイルを置き換えておく方が後々面倒は少ないと思います。
~ちょっと検証~
ここからはモデルと衣装の検証です。
どの程度見た目を変えれるかの確認のため、オブジェクトを選択中に赤矢印の「マテリアル(質感)」タブボタンを選択。 赤枠のディフューズ(拡散反射光=オブジェクトそのものの色)で赤色を選択し、シェーダーモデル(影の付き方)でトゥーンを選択するとビュー上でも見た目が結構変わります。
ついでに出力時の設定で赤枠内の数値を変更してサイズを2倍にしてみます。
これでビルドしてみると・・・
こうなります。(夜間発光も回避できていて実際は変更箇所1項目ずつ確認してます)
ノクトに衣装MOD、グラディオにモデルMODでビルドしました。
テクスチャの色は緑のままでしたが赤色に変わって、サイズも反映されていますが、シェーダーは変わってないようです。
また、衣装MODもモデルMODもほとんど似たようなモデル崩れが起きています。
同じようにサイズを0.5倍にして出力してみると・・・
こうなります。やっぱりモデルが崩れて武器がしっかり持てれてません。
以上より分かったこと。
●BlenderからのFBX出力時、またはMOD ORGANIZERでのビルド時にマテリアルの情報は欠落する。(何が欠落するかは不明だがサンプルや『FF15』内から抽出したものをFBX出力すると違和感がある)
●モデルMODも衣装MODも元のモデルのサイズ(ボーン)とほぼ一致させる必要がある。サンプルモデルはノクト(176cm)に合わせて作られているようなので、例えばグラディオ(198cm)用にするには約1.1倍にすればそこそこ合うと思われる。(横にも広がるので微妙かも)
⇒ここまでで1項の仮説は基本的に全て崩れました。
次項から2項で抽出したアラネアモデル使っていきますが、ちょっと時間かかりそうです。
-2018/6/18
長くなったので続きは別記事にしました。
続き:PC版『FF15』3Dモデルど素人がMODを作成してみる2
MODDERが増えることを願ってこの記事を書いたので、MOD制作&投稿までしても…