マップの変更 - (2015/02/10 (火) 02:03:35) の1つ前との変更点
追加された行は緑色になります。
削除された行は赤色になります。
*&bold(){※残念ながら私には国語力がありませんので読みにくい文章になっています。※}
&youtube(https://www.youtube.com/watch?v=zG2A9_SLVSE)
*&bold(){必要なもの(入手方法は色々事情がありまして説明できません)}
**ポケモンダイヤモンドかプラチナのROM&br()DeSmuME_X432R&br()Tinke.exe&br()SDSME170.exe&br()NPRE.exe&br()g3dcvtr.exe&br()3Dモデルを作成できるソフトなら何でも(3dsmaxで直接作る場合は不要、自分はSketchUpを使った。)&br()3ds Max 6(入手方法は想像におまかせします。起動にはWindowsXPmodeが必要)&br()Nintendo Nitro-System plugins for 3ds Max 6(入手方法は想像におまかせします。)
*&bold(){SketchUpでマップ作り&エクスポートの設定}
13.004mx13.004mの平面図形を描いて座標軸の中心に持ってきます。
1マス0.406375mx0.406375mで縦に32マス横に32マスで1つのマップです。主人公1人分が1マスの計算になります。
テクスチャは16x16なら0.406375mx0.406375mの大きさにしてください。1マスに対する解像度を上げることはできますが、
それを幾つもするとゲーム内でバグが起こって画像が乱れます。
ポリゴンの裏表はタイトル下画面を制作したときのように気を付けた方がいいと思います。
※半透明の方法ですが(透明は普通にできます)、その前にマップの仕組みから説明しておきたいと思います。
マップはnsbmdとnsbtxで大体はできていているのですが、SDSMEで書き換える際にnsbmdに付いているテクスチャが自動で引き剥がされます。
この仕組みを利用して、3DSMAXで変換する際にVertexPaintでTexture1(つまり建物のnsbtxじゃない方のnsbtx)に含まれているpuddleに好きな色を塗ることによって半透明にできます。
しかし、自前で作ったnsbtxと元々あるnsbtxには差異があるらしく元々あるnsbtxを利用しないとうまくいかないのです。
これは波のアニメーションなどについても同じことが起こります。なのでこれらを利用したい場合は同じようにしてください。
ここで考え方を変えて、マップを建物に、建物をマップにすればこの問題は解決できるのです。
つまり半透明にしたいものだけをマップとして置き換えて、残りを建物と置き換えるのです。そして半透明のものだけのnsbtxは既存の物を使う。
(建物の中で半透明のテクスチャを使っているのを発見できていない)
(後nsbmd内の_plを既存のnsbtxのpaletteに合うように書き換えておいてください。)
モデルが完成したらタイトル下画面の変更の時と同じ設定で.3dsとしてエクスポートしてください。
*&bold(){3DSMAX6でインポート→マテリアルの編集}
この項目はタイトル下画面の変更を参照してください。
この時にVertexPaintをpuddleの部分にすれば半透明のカラーを作ることができます。
この際半透明の方はマテリアルの設定の所でLight0のチェックをはずしてください。
*&bold(){g3dcvtr.exeで変換}
出力されたimdファイルをg3dcvtr.exeと同じフォルダへ
cmd.exeを起動してそのフォルダに行き、[g3dcvtr.exe ○○○.imd -etex]でnsbtxが、[g3dcvtr.exe ○○○.imd]でnsbmdが出力されます。
*&bold(){(オプション)アニメーション付きの建物を制作する}
上の動画では風車を置き換えています。
まずモデルを作成して3DSMAXでアニメーションを付けます。(この場合は動きのみです。)
そして.imdと.icaにチェックを入れてエクスポートします。
rom内のarcの中のbm_anime_25.BCA0(アニメーション)とfielddataのbuild_model_146.BMD0(オブジェクト)と置き換えます。
*&bold(){NPREで建物の種類や配置を変更&Tinkeで置き換え}
NPRE(texture.zipを解凍してtextureフォルダを.exeと同じフォルダにおく)でland_data.narcをopen as narc 3dでオブジェクトとムーブメントを変更
(NPREでの座標はSDSMEではひとつずれるので逆にSDSMEから座標を読み取ってください。Flag座標は微調整用で、
既存のrom内から同じ建物のあるマップを参照して自分で数値を入れてください。)
それをsave>>mapしてland_data_XX.binにリネームします。(後で分かりやすいようにするだけで別にしなくてもいいです。)
Tinkeでland_data_XX.bin(例えばフタバタウンなら0です)と置き換えでSAVEします。
*&bold(){SDSMEで編集して保存}
先ほど保存したromを開いて、作成したnsbmdとnsbtxと置き換えます。必要ならSDSMEでマップヘッダを編集します。
{オリジナルのアニメーション付きで風車を置き換えていると仮定するとtexture1を8にtexture2を2(実際はtexture4なんだけどこうらしい)にすればいいと思います。}
(texture1とtxture2は密接な関係にあるらしく1対1で対応しているらしい。つまりそれぞれマップテクスチャとオブジェクトテクスチャは対応しているのじゃないと反映されない。)
移動範囲とか地形(HGSSのBDHCはPtで使えるけどDPのはPtでは使えない)とか変更したら保存で完成です。
何かありましたら下のコメント欄にどうぞ。
#comment()
*&bold(){※残念ながら私には国語力がありませんので読みにくい文章になっています。※}
&youtube(https://www.youtube.com/watch?v=zG2A9_SLVSE)
*&bold(){必要なもの(入手方法は色々事情がありまして説明できません)}
**ポケモンダイヤモンドかプラチナのROM&br()DeSmuME_X432R&br()Tinke.exe&br()SDSME170.exe&br()NPRE.exe&br()g3dcvtr.exe&br()3Dモデルを作成できるソフトなら何でも(3dsmaxで直接作る場合は不要、自分はSketchUpを使った。)&br()3ds Max 6(入手方法は想像におまかせします。起動にはWindowsXPmodeが必要)&br()Nintendo Nitro-System plugins for 3ds Max 6(入手方法は想像におまかせします。)
*&bold(){SketchUpでマップ作り&エクスポートの設定}
13.004mx13.004mの平面図形を描いて座標軸の中心に持ってきます。
1マス0.406375mx0.406375mで縦に32マス横に32マスで1つのマップです。主人公1人分が1マスの計算になります。
テクスチャは16x16なら0.406375mx0.406375mの大きさにしてください。1マスに対する解像度を上げることはできますが、
それを幾つもするとゲーム内でバグが起こって画像が乱れます。
ポリゴンの裏表はタイトル下画面を制作したときのように気を付けた方がいいと思います。
※半透明の方法ですが(透明は普通にできます)、その前にマップの仕組みから説明しておきたいと思います。
マップはnsbmdとnsbtxで大体はできていているのですが、SDSMEで書き換える際にnsbmdに付いているテクスチャが自動で引き剥がされます。
この仕組みを利用して、3DSMAXで変換する際にVertexPaintでTexture1(つまり建物のnsbtxじゃない方のnsbtx)に含まれているpuddleに好きな色を塗ることによって半透明にできます。
しかし、自前で作ったnsbtxと元々あるnsbtxには差異があるらしく元々あるnsbtxを利用しないとうまくいかないのです。
これは波のアニメーションなどについても同じことが起こります。なのでこれらを利用したい場合は同じようにしてください。
ここで考え方を変えて、マップを建物に、建物をマップにすればこの問題は解決できるのです。
つまり半透明にしたいものだけをマップとして置き換えて、残りを建物と置き換えるのです。そして半透明のものだけのnsbtxは既存の物を使う。
(建物の中で半透明のテクスチャを使っているのを発見できていない)
(後nsbmd内の_plを既存のnsbtxのpaletteに合うように書き換えておいてください。)
モデルが完成したらタイトル下画面の変更の時と同じ設定で.3dsとしてエクスポートしてください。
*&bold(){3DSMAX6でインポート→マテリアルの編集}
この項目はタイトル下画面の変更を参照してください。
この時にVertexPaintをpuddleの部分にすれば半透明のカラーを作ることができます。
この際半透明の方はマテリアルの設定の所でLight0のチェックをはずしてください。
*&bold(){g3dcvtr.exeで変換}
出力されたimdファイルをg3dcvtr.exeと同じフォルダへ
cmd.exeを起動してそのフォルダに行き、[g3dcvtr.exe ○○○.imd -etex]でnsbtxが、[g3dcvtr.exe ○○○.imd]でnsbmdが出力されます。
*&bold(){(オプション)アニメーション付きの建物を制作する}
上の動画では風車を置き換えています。
まずモデルを作成して3DSMAXでアニメーションを付けます。(この場合は動きのみです。)
そして.imdと.icaにチェックを入れてエクスポートします。
rom内のarcの中のbm_anime_25.BCA0(アニメーション)とfielddataのbuild_model_146.BMD0(オブジェクト)と置き換えます。
ちなみにBTA0はテクスチャアニメーションで、BCA0は移動、回転とかです。
*&bold(){NPREで建物の種類や配置を変更&Tinkeで置き換え}
NPRE(texture.zipを解凍してtextureフォルダを.exeと同じフォルダにおく)でland_data.narcをopen as narc 3dでオブジェクトとムーブメントを変更
(NPREでの座標はSDSMEではひとつずれるので逆にSDSMEから座標を読み取ってください。Flag座標は微調整用で、
既存のrom内から同じ建物のあるマップを参照して自分で数値を入れてください。)
それをsave>>mapしてland_data_XX.binにリネームします。(後で分かりやすいようにするだけで別にしなくてもいいです。)
Tinkeでland_data_XX.bin(例えばフタバタウンなら0です)と置き換えでSAVEします。
*&bold(){SDSMEで編集して保存}
先ほど保存したromを開いて、作成したnsbmdとnsbtxと置き換えます。必要ならSDSMEでマップヘッダを編集します。
{オリジナルのアニメーション付きで風車を置き換えていると仮定するとtexture1を8にtexture2を2(実際はtexture4なんだけどこうらしい)にすればいいと思います。}
(texture1とtxture2は密接な関係にあるらしく1対1で対応しているらしい。つまりそれぞれマップテクスチャとオブジェクトテクスチャは対応しているのじゃないと反映されない。)
移動範囲とか地形(HGSSのBDHCはPtで使えるけどDPのはPtでは使えない)とか変更したら保存で完成です。
何かありましたら下のコメント欄にどうぞ。
#comment()
表示オプション
横に並べて表示:
変化行の前後のみ表示: