インスタントゴーストクッキング
    バックナンバーl 1・材料紹介 l 2・下ごしらえ l 3・成形 
インスタントゴーストクッキング特別編
2006年3月5日
インスタントゴーストクッキング特別編
★surfaces.txt丸かじり

surfaces.txtというものは、
ゴーストのアニメ、当たり判定、着せ替えなどを制御するものです。
つまり、シェルに何の判定も動きもいらないのなら必要ありません。

ここでは、最低限と思われるアニメと当たり判定をつけてゆきます。

最悪、コピー&ペーストすれば瞬きはなんとかなりますよ。
数字とアルファベットが並びますが、我慢してください。

□見本(SERIKO/1.x)
□アニメ(素の顔に瞬きをさせる)
□当たり判定(頭、顔、胸の三箇所)

□見本(SERIKO/1.x)


赤枠の中身がアニメを指定する記述、青枠の中身が当たり判定の指定です。

まず最初に、サーフェス番号を指定し、
その後ブレス({}をブレスと呼びます)の中に記述していきます。


目次へ

□アニメ(瞬きをさせる)
立ち絵のことをサーフィス、もしくはサーフェスと呼びます。(綴りは「surfaces」)
アニメはパラパラ漫画の要領で、サーフェスの組み合わせによって作られるのです。

そこで、基本サーフェスの中にある、
素(surfaces0)と目閉じ(surfaces6)を組み合わせて簡易瞬きを作りましょう。



赤い色で行頭に0とあるのは、アニメにつけられたグループ名です。
一つのサーフェスに複数のアニメがつけられた場合の識別に使われています。

「interval」というのは、アニメが発生する頻度のことです。
sometimes 時々(マバタキ程度)がそのものずばり最も適当でしょう。
次の行からは実際にどのサーフェスを表示するのかを指定しています。
pattern0、pattern1とあるのは、アニメに使用されるサーフェス自体の通し番号です。

青色の数字、これが表示するサーフィスの指定です。
ここではsurfaces6を表示させたいわけですから、6と記入されています。

次の行には、また元の状態に戻したい、つまり目を開けさせたいので、
-1(アニメーション開始以前の状態を表示)を記入して始めの状態に戻す指示。

緑色の数字はウェイト、つまり、画像が表示されるまでの時間を示しています。
指定した時間が経過した「後」に、コマが表示されることに注意。

オーバーレイ(overlay)は画像の重ね方、その後の数字二つは、
サーフェスをどの位置で重ねるかの座標を表します。

参考サイト

Disc-2 ゴースト製作
天地の狭間
シェル・ゴースト作成入門

これを読んで理解できるくらいなら、ここは見ていないと思いますが一応。
僕もはっきり言ってちんぷんかんぷんで理解できませんでした。

本家の仕様書類

◎一口メモ
?pattern?,[surfaceid],[interval],[method],[offsetx],[offsety]
というものを紐解いてゆくと以上のような説明になります。

やっぱりわからないよ、という方は、surfaces.txtに、

surface0
{
0interval,sometimes
0pattern0,6,50,overlay,0,0
0pattern1,-1,50,overlay,0,0
}


黙って上記の赤字部分を貼り付けましょう。

目次へ


□当たり判定(頭、顔、胸の三箇所)
「collision」というのが当たり判定を指定する際の合言葉です。

当たり判定は、四角い形にしか設定することができません。
四つの点を指示して、その四角に囲われた範囲に当たり判定が発生するわけです。



赤い数字で0、1、2とありますが、これには通し番号以上の意味があります。
番号が早い方から優先して判定されるのです。

たとえば、顔と目の当たりを判定二つともつけたい時に、目は顔の範囲に含まれます。
この時、顔の方をcollision0で指定してしまうと、その後に目を指定しても、
顔の当たり判定が優先されるために無意味になってしまいます。

あきつ様にお借りしたシェル。反則気味な可愛さ)

基本的には、細かい範囲から先に指定してゆくといいです。

ブルーの数字が四つの点の一つ一つなのですが、
実際に指定するに当たって、非常に便利なツールがあります。
里々作者様のサイトから、「Coordin」というソフトを落としてきてください。

起動すると、ウィンドウが開いて「ファイルをドロップしてください」と表示されます。
このウィンドウにサーフェスを一枚ドロップしてください。

マウスでクリックし、動かすと四角い枠がそれにあわせて動くかと思います。
この枠の中、それがすなわち当たり判定になります。

数値がクリップボードにコピーされるので、
青い数字の部分にそれを貼り付けるだけで作業は完了します。

surfaces0以外のサーフェスも全てポーズが同じなら、
当たり判定は流用することができます。

次は緑の文字の部分についてですが、数字で指定された範囲が、
どんな名前で示される部位であるかの指定です。

大文字と小文字が区別されるので注意してください。
もしも、胸部をBustと指定したのに、辞書にbustと書いてしまうと、反応しません。

では、実際に数値の部分を「Coordin」で書き換えて見ましょう。
ブレス({})の内側に書き込むことを忘れないでください。

collision0,27,2,113,45,Head
collision1,48,45,96,76,Face
collision2,71,89,85,106,Bust

◎一口メモ
複雑な形の当たり判定を作りたいときは、
小さく作った当たり判定をいくつも組み合わせると良いです。

「surfaces.txt」に何かメモを書いておきたいときは、
「//」を頭につけて記述してください。
例としては、

//コメントを書くためにはこのように文の頭に「//」をつけます。

のように書きます。
この場合の「//」のように使われる記号を「エスケープ記号」と呼びます。
このようにして、無効化を行った場合「エスケープした」と言います。


目次へ


★  戻る