#author("2017-08-17T04:15:49+09:00","","")
#author("2017-10-21T03:47:02+09:00","","")
[[MOD/作成方法]]

* 指導者の各種画像表示(文明選択画面/ローディング画面/リザルト画面/外交交渉画面) [#eaf8faa2]

長くなっちゃいますがある意味不可分なものなので、まとめて説明します。
SDKのサンプルを改変していく形で説明します。

** 用意するもの [#f98cfbe3]

- hogehoge_LoadingInfo_Background.dds
サイズ:1920x960、フォーマット:非圧縮/ABGR8/ミニマップなし
- hogehoge_LoadingInfo_Foreground.dds
サイズ:888x1024、フォーマット:非圧縮/ABGR8/ミニマップなし
- hogehoge_DiplomacyInfo_Background.dds
サイズ:1920x960、フォーマット:非圧縮/ABGR8/ミニマップなし
- PORTRAIT_hogehoge.dds
サイズ:328x646、フォーマット:非圧縮/ABGR8/ミニマップなし
- FALLBACK_NEUTRAL_hogehoge.dds
サイズ:888x1024、フォーマット:非圧縮/ABGR8/ミニマップなし
- LEADER_hogehoge_NEUTRAL.dds
サイズ:888x1024、フォーマット:非圧縮/ABGR8/ミニマップなし

** 下処理 [#m5aa80cc]

SDKのサンプルから立ち上げた状態だと、ゲーム内で自分の文明をクリックするとクレオパトラのアニメになっています。
まずはこれを消してしまいましょう。

クレオパトラのアニメを消すのは、既存記事([[勝手に出てくるクレオパトラを消す方法]])を参照してください。

** texファイルの用意 [#qd4ff928]
PORTRAIT_hogehoge.dds、FALLBACK_NEUTRAL_hogehoge.dds、LEADER_hogehoge_NEUTRAL.ddsの三つはtexファイルというものが必要です。
自動生成できるっぽいんですけど(Photoshopなら可能?)わかりませんのでサンプルのを改変します。
コピーして中身を2か所ほど変更します。

*** FALLBACK_NEUTRAL_hogehoge.tex [#l2a5997b]

FALLBACK_NEUTRAL_JASPERKITTY.texをコピーして作ります。
コピーしたら開いて以下のように書き換えます。
     <m_ClassName text="Leader_Fallback"/>
     <m_DataFiles>
         <Element>
             <m_ID text="DDS"/>
             <m_RelativePath text="FALLBACK_NEUTRAL_hogehoge.dds"/> ★ここ
         </Element>
     </m_DataFiles>
     <m_Name text="FALLBACK_NEUTRAL_hogehoge"/> ★ここ
     <m_Description text=""/>
     <m_Tags>
         <Element text="Leader_Fallback"/>
         <Element text="Leader"/>
         <Element text="Fallback"/>
     </m_Tags>
     <m_Groups/>
 </AssetObjects::TextureInstance>

*** PORTRAIT_hogehoge.tex [#v90341a2]

LEADER_JASPER_KITTY_NEUTRAL.texをコピーして作ります。
コピーしたら開いて以下のように書き換えます。
 <m_DataFiles>
     <Element>
         <m_ID text="DDS"/>
         <m_RelativePath text="PORTRAIT_hogehoge.dds"/> ★ここ
     </Element>
 </m_DataFiles>
 <m_Name text="PORTRAIT_hogehoge"/> ★ここ
 <m_Description text=""/>
 <m_Tags>
     <Element text="UserInterface"/>
     </m_Tags>
     <m_Groups/>
 </AssetObjects::TextureInstance>

*** LEADER_hogehoge_NEUTRAL.tex [#ye11e1fa]

こちらもLEADER_JASPER_KITTY_NEUTRAL.texをコピーして作ります。
コピーしたら開いて以下のように書き換えます。

 <m_DataFiles>
     <Element>
         <m_ID text="DDS"/>
         <m_RelativePath text="LEADER_hogehoge_NEUTRAL.dds"/> ★ここ
     </Element>
 </m_DataFiles>
 <m_Name text="LEADER_hogehoge_NEUTRAL"/> ★ここ
 <m_Description text=""/>
 <m_Tags>
     <Element text="UserInterface"/>
     </m_Tags>
     <m_Groups/>
 </AssetObjects::TextureInstance>

すべて作成し終えたら開発環境へ登録します。
Modbuddyの画面左にある一覧の「Textures」へドラッグアンドドロップしてください。
元のJASPER_KITTYのは削除してしまいましょう。

画面左にある一覧で選択してからDeleteキーで消せます。
** XLPファイルの編集 [#he994ad9]

XLPフォルダには2つファイルが登録されています。
それぞれ以下のように書き換えます。

*** LeaderFallbacks.xlp [#o2cb9b7b]

 <?xml version="1.0" encoding="UTF-8" ?>
 <AssetObjects::XLP>
     <m_Version>
         <major>4</major>
         <minor>0</minor>
         <build>253</build>
         <revision>293</revision>
     </m_Version>
     <m_ClassName text="LeaderFallback"/>
     <m_PackageName text="LeaderFallbacks"/>
     <m_Entries>
         <Element>
             <m_EntryID text="FALLBACK_NEUTRAL_hogehoge"/> ★ここ
             <m_ObjectName text="FALLBACK_NEUTRAL_hogehoge"/> ★ここ
         </Element>
     </m_Entries>
     <m_AllowedPlatforms>
         <Element>WINDOWS</Element>
         <Element>LINUX</Element>
         <Element>MACOS</Element>
         <Element>IOS</Element>
     </m_AllowedPlatforms>
 </AssetObjects::XLP>

*** UILeaders.xlp [#e8545765]

 <?xml version="1.0" encoding="UTF-8" ?>
 <AssetObjects::XLP>
     <m_Version>
         <major>4</major>
         <minor>0</minor>
         <build>253</build>
         <revision>293</revision>
     </m_Version>
     <m_ClassName text="UITexture"/>
     <m_PackageName text="UILeaders"/>
     <m_Entries>
         <Element>
             <m_EntryID text="LEADER_hogehoge_NEUTRAL"/> ★変更
             <m_ObjectName text="LEADER_hogehoge_NEUTRAL"/> ★変更
         </Element>
         <Element> ★追加 
             <m_EntryID text="PORTRAIT_hogehoge"/> ★追加
             <m_ObjectName text="PORTRAIT_hogehoge"/> ★追加
         </Element> ★追加
     </m_Entries>
     <m_AllowedPlatforms>
         <Element>WINDOWS</Element>
         <Element>LINUX</Element>
         <Element>MACOS</Element>
         <Element>IOS</Element>
     </m_AllowedPlatforms>
 </AssetObjects::XLP>

** FallbackLeaders.artdefの編集 [#zfba9b51]

以下を書き換えるだけです。

                                     <Element class="AssetObjects::BLPEntryValue">
                                         <m_EntryName text="FALLBACK_NEUTRAL_hogehoge"/> ★ここ
                                         <m_XLPClass text="LeaderFallback"/>
                                         <m_XLPPath text="LeaderFallbacks.xlp"/>
                                         <m_BLPPackage text="LeaderFallbacks"/>
                                         <m_LibraryName text="LeaderFallback"/>
                                         <m_ParamName text="BLP Entry"/>
                                     </Element>

** NewLeader_Config.xmlの編集 [#p0b685ce]

PORTRAIT画像を指定している以下の箇所を書き換えます。

&ref(PORTRAIT.png);

** ローディング画面、外交交渉画面の設定記述 [#qf545f83]

用意しておいた残りの画像ファイル3つを登録します。

&ref(ImageAdded2.png);

さらに、Property画面から画像のImportを指定します。

&ref(ImportImage.png);

そしてここからxmlを書きます。
新規にファイルを追加してもいいですし、どこかに混ぜても構いません。
本例ではNewLeader_JasperKitty.xmlに混ぜ込むことにします。

(新規にファイルを追加した場合はPropertyへのファイル登録を忘れないように。In-Game Actions⇒UpdateDatabaseのところです。)

NewLeader_JasperKitty.xml
     <DiplomacyInfo>
         <Row Type="LEADER_JASPER_KITTY" BackgroundImage="hogehoge_DiplomacyInfo_Background.dds"/>
     </DiplomacyInfo>
     <LoadingInfo>
         <Row LeaderType="LEADER_JASPER_KITTY" ForegroundImage="hogehoge_LoadingInfo_Foreground.dds" BackgroundImage="hogehoge_LoadingInfo_Background.dds" LeaderText="LOC_LEADER_JASPER_KITTY_DOM_TEXT" PlayDawnOfManAudio="1"/>
     </LoadingInfo>

DiplomacyInfoが外交交渉画面です。
こちらはリーダーの指定と背景画像の指定のみ。
LoadingInfoがローディング画面です。前景、背景を登録します。
LeaderTextはローディング画面にでてくる指導者固有の説明書きの部分です。
必要なければ削除してOK。追加する場合はNewLeader_Text.xmlへ書いてください。

PlayDawnOfManAudioはゲーム開始(再開)時の時代に合わせた文章のナレーションボイス。0にするとボイスオフ。


** 成功例 [#t1b5028b]

文明選択画面

&ref(BeforeGameStart.jpg);

Loading画面

&ref(Loading.jpg);

外交交渉画面

&ref(Diplomacy.jpg);

** 備考 [#n6391db5]

文明選択画面の画像は用意しなくてもいい場合があります。
FALLBACK_LEADER_hogehogeを使っても違和感がない場合はつくらなくてOK。
(たとえばボイスロイドの立絵だときれいに調整されて枠に収まるケースが多いです)

また、本手順で実際に作ったものを以下に上げておきます。
https://www.axfc.net/u/3835265



このエントリーをはてなブックマークに追加