スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

カテゴリ : スポンサー広告

KAGEX講座(17) - キャラクタ表示(顔分離立ち絵)

前回 KAGEX講座(16) - レイヤの回転(rotate)
ワールド拡張の立ち絵には「顔分離型立ち絵」と「顔合成型立ち絵」の2種類があります。
今回は顔分離型立ち絵の定義の仕方を紹介します。
顔合成型立ち絵については第5回を参照。

※付属リファレンス(world_inst.txt)だと「表情合成方式」と「表情統合方式」になっていました。
※顔とポーズで画像2枚 = 顔分離型立ち絵 = 表情合成方式
※顔とポーズで画像1枚 = 顔合成型立ち絵 = 表情統合方式
※わかりづらいですがまあ名前なんてどうでもいいです。

とりあえず今回使用する画像↓をダウンロードしてfgimageフォルダにでも入れておいてください。
http://www.mediafire.com/?bryar6c3g37djyq
のっぺらぼうの画像4枚と顔の画像4枚が入っています。
内部的にはのっぺらぼうの画像を土台としてその上に顔の画像をのせることとなります。

画像の名前の規則は以下のようにしています。

土台の画像:CHAR_POSE_DRESS_LEVEL.png
CHARの部分にキャラクタの名前を入れます。
ここではしおり1キャラしかいないのでsiori固定です。
POSEの部分にポーズごとの文字を入れます。
ここではn(通常)とs(直立)の2種類のポーズがあります。
DRESSの部分に服装ごとの文字を入れます。
ここではs(夏制服)とw(冬制服)です。
LEVELの部分に表示レベルごとの数字を入れます。
ワールド拡張における表示レベルについてはまだ解説していないので0固定にしておきます。
※具体的には以下の4つのファイルが入っています。
※siori_n_s_0.png(しおり/通常/夏制服/レベル0)
※siori_n_w_0.png(しおり/通常/冬制服/レベル0)
※siori_s_s_0.png(しおり/直立/夏制服/レベル0)
※siori_s_w_0.png(しおり/直立/冬制服/レベル0)

顔の画像:CHAR_POSE_FACE_LEVEL.png
CHAR,POSE,LEVELは土台の画像のそれとおなじです。
FACEの部分には表情ごとの文字を入れます。
ここではk(喜)とd(怒)の2種類の表情があります
※具体的には以下の4つのファイルが入っています。
※siori_n_k_0.png(しおり/通常/喜/レベル0)
※siori_n_d_0.png(しおり/通常/怒/レベル0)
※siori_s_k_0.png(しおり/直立/喜/レベル0)
※siori_s_d_0.png(しおり/直立/怒/レベル0)
今回はポーズが違っても表情を使いまわせるのでおなじ画像が2枚入っていたりしますが、一般的にはポーズごとに表情の画像もかえる必要があるはずなので敢えてわけています。
表情の画像のサイズはその土台の画像のサイズとおなじにする必要があります。

以上の規則をenvinit.tjsで表現すると以下のようになります。
    characters : %[
        しおり : %[
            poses : %[
                通常 : %[
                    image : "siori_n_DRESS_0",
                    faceImage : "siori_n_FACE_0",
                    dresses : %[
                        夏制服 : "s",
                        冬制服 : "w",
                    ],
                    defaultDress : "s",
                    faces : %[
                         : "k",
                         : "d",
                    ],
                    defaultFace : "k",
                ],
                直立 : %[
                    image : "siori_s_DRESS_0",
                    faceImage : "siori_s_FACE_0",
                    dresses : %[
                        夏制服 : "s",
                        冬制服 : "w",
                    ],
                    defaultDress : "s",
                    faces : %[
                         : "k",
                         : "d",
                    ],
                    defaultFace : "k",
                ],
            ],
            defaultPose : "通常",
        ],
    ],
charactersの部分のみ抜粋です。
その他の部分はyoffsetも含めておなじなので前回までのenvinit.tjsのcharactersの部分を書きかえてください。

顔合成型とちがう部分としては、imageに土台の画像、faceImageに顔の画像のファイル名を定義します。
※faceImageのIは大文字なので気をつけてください。大文字と小文字は区別されます。
※内部的にはfaceImageが定義されていると顔分離型、定義されていないと顔合成型として処理されます。
imageのDRESSの部分が夏制服のときは「s」、冬制服の時は「w」に置きかえられます。
faceImageのFACEの部分が喜のときは「k」、怒の時は「d」に置きかえられます。
顔合成型の時とおなじなので詳しくは解説しません。

表示のさせ方は顔合成型と全くおなじです。
実際にksファイルを書くときには顔合成型や顔分離型を意識せずにすむようになっています。
@道路
@しおり show
キャラクタ表示[l][r]

@しおり  tr_face
表情変更[l][r]
@しおり 直立 tr_pose
ポーズ変更[l][r]
@しおり  tr_face
もっかい表情変更[l][r]

@しおり 冬制服
服装変更[l][r]
@しおり 通常 tr_pose
ポーズ変更
※ついでにトランジションもつけてますが、なくてももちろん大丈夫です。

もしかしたら表示が少しおかしくなっているかもしれません。
KAGEXを一部修正しておくことを推奨します。
systemフォルダに入っている「KAGEnvCharacter.tjs」の943行目付近
                    var operateMode = omPsNormal;
※検索してさがしてください。
これを以下のように変更します。
                    var operateMode = omAuto;
omPsNormalをomAutoにして上書き保存するだけです。
※厳密にチェックしてませんが自分は変更しても今のところ大丈夫な感じ……。
次回 KAGEX講座(18) - 環境レイヤ(newlay, dellay)
スポンサーサイト

タグ : 吉里吉里 KAGEX 講座

カテゴリ : KAGEX

コメントの投稿

非公開コメント

最新記事
カテゴリ

openclose

記事一覧
Twitter
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。