* U K I Y A H O N P O *
Nel mezzo del cammin di nostra vita mi ritrovai per una selva oscura,
che la diritta via era smarrita.
リロード   新規 下位ページ作成 編集 凍結 差分 添付 コピー 名前変更   ホーム 一覧 検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS
浮子屋商店もよろしく。

伺か関連ツール/SPAM のバックアップ(No.2)


このページは私の作成したツール「SPAM」について記載しています。*1

SPAMダウンロード

fileSPAM162.zip 2006/04/21 version 1.6.2

  • 自動組み立てにおいて、タイミングがシビアなコードがあった部分を改善

SPAM詳細マニュアル

作成中。というか作成しないかも。 同梱のドキュメントを見てください。

SPAMって何?

SPAMは、SVGの効率的な作成を目的として作られたツールです。特徴は以下の通り。

  • サーフィス画像から48×64の画像を抜き出し、SVGのスプライトとして並べていく作業が簡単にできます。
  • サーフィス画像のファイル名からサーフィス番号を推測し、SVG定義ファイルの作成を支援します。
  • SVGを作成した際の情報(ヒント情報)を保存しておくことにより、作業の再現ができます。
  • また、ヒント情報を残すことによって他人がSVGの更新を引き継ぐこともできます。
  • 無駄機能ネタ機能は1つしかありません。珍しいですね。
  • .NETを利用して動作するため、メモリを大量に消費します(古いPCではちょっと重いかもしれません)。

実際につくってみよう

ここでは、実際にSVGを0から作成することを想定して、SPAMの利用法を簡単に説明します。
ゴーストの例としては、つばきを利用します。

※以下の情報は SPAM1.5.0 の情報なので、ボタン配置等一部異なる部分があります。

1.サーフィス画像の準備

まず必要なのは、SVGの元となるサーフィス画像の準備です。SPAMSVGを作るには、元ファイルとして、1サーフィスについて1画像が必要です。

単純なサーフィスのゴーストの場合(1サーフィス1画像で重ね合わせによる合成サーフィスが無い場合)はゴーストフォルダにあるサーフィスをそのまま利用しても良いのですが、多くの場合はそうでないので、合成した画像を作る必要があります。

現在その機能を持ったソフトは、おそらくSSSB(SSSBの人さん作成のSSTPサーバソフト)だけです。SSSBを持っていない人は、それはそれから入手してください。インストールと初期設定はここにあります。

SSSBのインストールと初期設定が終ったら、SSSB上で右クリックして[ゴースト一覧] を選択しましょう。そして作りたいゴーストを選んで、[合成]ボタンを押せば、SSSBと同じディレクトリに surfacexxxx.bmp という画像が大量に出来る筈です(xxxxはサーフィス番号)

2.SPAMの準備

spam1.png

準備が出来たら、SPAMを起動して、[ファイル]-[新規作成]を選択してください。縦、横の数を聞いてきます。横の数は10が一般的なので、そのゴーストのサーフィス数に応じて縦の数を変えてください。余ってもあとで消すことができるので、作業用に少し大目にしておくと良いでしょう。

その次に、[エディタを起動]ボタンを押してください。右側にスプライトエディタウィンドウが表示されます。

スプライトエディタウィンドウが表示されたら、[読み込みディレクトリ設定]ボタンを押して、先程SSSBで出力した画像のあるディレクトリを指定してください。

ここまでの準備を行ったら、画面は以下のようになっているはずです。

3.スプライトの切り出し

では実際に画像からスプライトを切り出してみましょう。

まず、48×64をそのまま等倍で切り出したのでは顔の一部しか見えないことになりますので、拡大率を変えましょう。100%と書いてある部分の右の上下ボタンを押すことで25%ずつ変更できます。大体150%〜250%くらいの間が良いようです。

次に、サーフィス画像の中で点滅している赤枠を、マウスでドラッグするかカーソルキーで位置調整してください。このとき、ウィンドウ右上に実際に切り出される画像が表示されますので、それを見ながら微妙な位置調整を行います。

位置が決まったら、[この画像をコマに設定]ボタンを押してください。メインウィンドウ側で赤枠が点灯しているコマ(この場合は一番左上)に、今選択した範囲の画像が設定されました。

また、サーフィス番号も画像ファイル名から自動的に割り振られています。コマの右下の×が数字(この場合0)に変わりましたね。各コマが持つサーフィス番号等の情報は、メインウィンドウの下側中央の、灰色のテキストボックスに表示されています。

この情報を「ヒント情報」と呼び、灰色のテキストボックスを「ヒント情報表示テキストボックス」と呼びます。各コマをどのファイルのどの位置から切り出したか、といった情報は、ヒント情報として保存されています。ヒント情報表示テキストボックスは、ダブルクリックすることによって内容を変更することができます。

spam2.png

4.くりかえし

さて、1つ切り出せたので、次の画像を切り出しましょう。メインウィンドウで次のコマ(左上が001となっているコマ)を選択しておきます。

次に、スプライトエディタウィンドウで、[次の画像>>]ボタンを押してください。次の画像が表示されたら、先程と同じように範囲を指定して切り出します。

この時、メインウィンドウ側で[コマセット時に1進む]チェックボックスをチェックしておくと、[この画像をコマに設定]ボタンを押した際に自動的に次のコマに赤枠が移るので、スプライトエディタウィンドウで[この画像をコマに設定]→[次の画像>>]を押すだけでどんどんコマを作っていくことができます。

spam3.png

5.作業のTIPS

  • SVGは、同じような表情の画像は、なるべく同じ位置で切り出すと見栄え良く仕上がります。あるコマの位置に切り出し位置を合わせたい場合は、メインウィンドウ側で基準となるコマを選択し、[位置のみ戻す]ボタンを押すと、スプライトエディタウィンドウの選択位置がそのコマのものと同じになります。
  • コマの並べ替えを行いたい場合は、赤枠を並べ替えたいコマにセットして、別のコマで右クリックしてください。赤枠のコマと右クリックされたコマの位置が入れ替わります。
  • ゴースト側でエイリアスが定義されている場合など、1つのコマに複数のサーフィス番号を割り当てたい場合があります。ヒント情報表示テキストボックスをダブルクリックして、facenoの項目を、例えば 1&2&3 のように&でつないで数字を記述すると、複数のサーフィス番号を割り当てることができます。
  • 行があまった場合は、[編集]-[サイズ変更]で「たて」を減らすことで、一番下の行を削除することができます。
  • SSTP-Viewerでは、\u側に表示される画像は上16ドットが切れた形になりますのでご注意ください。[<<この部分は\u側見切れ]を押すとその状況をシミュレートできます。
  • スプライトエディタウィンドウで現在表示されている画像を変えるには、[<<前の画像][次の画像>>]ボタンを押すほかに、一番下に表示されているドロップダウンリストを直接変更することも可能です。
  • あるコマをやりなおしたい場合は、[エディタに戻す]ボタンを押すと、スプライトエディタ側が、そのコマ編集時の状態にセットされますので、再度切り出しを行ってください。
  • 作業のために、クリップボードのようなものが実装されています。メインウィンドウ右下の[Paste(undo)]ボタンが「貼り付け」、[copy]ボタンが「コピー」にあたります。クリップボードの内容はその左側に表示されています。
  • あるコマと内容を比較しながら切り出したい場合――例えばヒント情報の無いSVGに手を加える時に、なるべく位置を合わせたい場合など――は、[比較対象にする]ボタンが役に立ちます。このボタンを押すことで、スプライトエディタウィンドウ側で、現在の選択範囲と指定したコマの内容が重ね合わせて表示されます。

6.定義作成

切り出しが一通り終ったら、SVG定義ファイルの色々な属性を設定しましょう。[定義ファイル]-[項目の編集]ボタンを押して、各項目の内容を適切に設定します。

各項目の詳細な意味は、SVG-Docを参考にしてください。

[descript.txt]ボタンを押して、ゴーストのdescript.txtファイルを指定することで、一部項目を自動的に設定することができます。また、update項目で[今日]ボタンを押すと、今日の日付が入力されます。

spam4.png

sakura=つばき
unyu=うにゅうα
user=%username
craftman=黒羽龍矢
url=http://kurobanetatuya.hp.infoseek.co.jp/ukagaka/index.htm
hpname=龍屋
surfacefile=tubaki.png
update=2005/07/15
ghostname=つばきとうにゅうα
supported=FULLSURFACE
sakura-action=OK

7.保存とチェック

すべて終ったら、[ファイル]-[全て保存]を選択してください。プロジェクトファイル、全ヒント情報ファイル、SVG定義ファイル、SVGサーフィスファイルの保存位置を聞いてきます。ゴースト名から適切な名前をつけてください。特に全ヒント情報ファイルとSVG定義ファイルは、同じ .txt ファイルなので間違えないように。

保存できたら、正しく作成されているかどうかチェックを忘れずに。SSPのサーフィステスト(Ctrl-Tで表示できます)とSVGを見比べたり、SARSでCtrl+F(次のサーフィス)とF7(この行のみを確認)を繰り返し押したりするのが良いでしょう。SVGの文法チェックにはSVG-Modifierが役に立ちます。

SVGを他人に渡す時に最低限必要なのは、SVG定義ファイルとSVGサーフィスファイルですが、全ヒント情報ファイルも一緒に渡すことで、他の人があなたの作業を再現し引き継ぐことが可能になります。全ヒント情報ファイルには、元画像のディレクトリ名が入っているため、問題のある場合には適宜全置換などしてください。

プロジェクトファイルの方は、そのSVGを作った際のSPAMの設定や、SVG定義ファイルやサーフィスファイルの位置等が保存されているだけですので、同じディレクトリ構造で作業している人にしか意味がありません(つまり、基本的に他人に渡す必要はありません)。

なお、全ヒント情報ファイルと元画像さえあれば、SVGをフルオートで作成することが可能となります。([ヒント情報]-[ヒント情報から自動組み立て])


*1 名前がヤバいのは仕様です。ボトラーが悪いんです。