開発編

ページ名:tutorial_develop
戻る:アニメ編(その十)


Excel で JPY ファイルを作成


ここまで紹介した JPY ファイルは、短いものでは十行程度でしたが、長いものは優に百行を超えたものもありました*1


この規模のファイルをテキストエディタで不具合なく編集することは困難です。もちろん不可能ではありませんが、効率がいいとは決していえません。


そこで、Microsoft Excel を用いて JPY ファイルを編集する方法を紹介します。
Excel は Windows で最も優れたアプリケーションの一つで、ビジネスパーソンならあらゆる用途に用いているでしょう。本来ワープロやグラフィックソフト、あるいはデータベースで行うべきことまで Excel でこなしている人が、どんな職場にもいるはずです。


Excel の強みは、なんといってもその強力な編集機能です。これを CardWirth のシナリオ制作にも使用しない手はありません。
今回は Excel のワークシートと JPY ファイルを相互に変換するアドインと、その使用方法を紹介します。


ただし申し訳ないのですが、今回説明する内容はお使いの PC に Excel がインストールされていないと使えません。あらかじめお断りしておきます。


準備


作業を始める前に、あらかじめアドインをダウンロードし、Excel にインストールしておく必要があります。
以下の手順で作業して下さい。


まずJPY1 開発支援ツール(Excel アドイン) をダウンロードします。
ダウンロードしたファイルは CardWirth のシナリオ形式になっており、エフェクトブースターのサンプルとしても動作しますが、今必要なのは etc\ フォルダにある CW_JPY1.xla というファイルです。これが Excel のアドインなので、Excel に登録します。


アドインの登録手順は Excel のバージョンによって異なりますので、詳細はお使いの Excel のヘルプを参照して下さい。ここでは Excel 2007 での手順を説明します。


まず、メニューから [Excel のオプション(I)] を選択します。



表示されたオプションダイアログで左の一覧から [アドイン] を選択し、[設定(G)...] ボタンを押下します。



アドインのダイアログで [参照(B)...] ボタンを押下します。



ファイルの参照ダイアログが表示されますので、このフォルダに CW_JPY1.xla をコピーします(エクスプローラからダイアログに直接ドラッグ&ドロップできます)。
そして、このダイアログでファイルを選択し [OK] ボタンを押下します。一覧にチェックが入っていることを確認し、あとは逐次 OK を押して設定画面を閉じてください。




これで準備は完了です。アドインが登録されるとリボンに登録されますので確認して下さい。
Excel のバージョンによってはメニューバーに直接登録される場合もあります。



アドインの削除


アドインを削除するには上記の手順を参考に、当該のファイルの指定を外すだけで可能です。
レジストリや外部の設定ファイルの類は使用していませんので、それ以上アンインストールの手順は必要ありません。


使い方


ワークシートの作成


ワークシートを新規作成し、先ほどメニューに登録された [CardWirth] を選択して、[JPY1 テンプレート挿入] を選びます。



すると、以下のようなワークシートが挿入されます。



これが JPY ファイル作成用のワークシートです。


  • タブには識別するための名前を入れます。JPY ファイルとして保存する際、このタブ名がファイル名として用いられます。デフォルトは Template ですので、適宜変更して下さい。
  • 列にはあらかじめ JPY のパラメータが全て記載されています。必要に応じて並び順を変えてもかまいません。
  • 行の左端にはセクション名が入ります。[] で括る必要はありません。

実際に値を入れたワークシートは、たとえばこのようになります。



これで見ると、一行目(Excel 上では 3 行目ですが)の左端には init とあり、この行が [init] セクションの設定内容であることを示しています。それを横に見ていきますと backwidth の下には 632 、backheight の下には 420 とあって、それぞれのパラメータを示しているとわかるでしょう。
同様に、その下の行は [frame000] セクションの設定内容ですが、


[frame000]
width=632
height=420
fileName=MapOfWirth.bmp
dirtype=2
savecache=1

であることを意味しています(右の方にスクロールするとさらにパラメータがありますが、このケースでは値が設定されていないので割愛します)。


また、position パラメータのすぐ右にピンク色のテキストが表示されていますね。
各パラメータには Excel のコメント機能を用いた簡単な説明があり、マウスをセルの上に置くだけでその内容が表示されるようになっています。


JPY ファイルの出力


作成したワークシートから JPY ファイルを生成するには、まず出力する箇所を範囲選択します。



このとき、選択範囲の一番上の行がパラメータ名、一番左の列がセクション名になるようにします。パラメータ分類の行は必要ありませんのでご注意下さい。


次に、この範囲選択した状態でマウスのボタンを右クリックし、表示されたコンテクストメニューの中から [JPY1 変換出力...] を選びます。画面上のメニューバー/リボンから同じ項目を選択してもかまいません。



すると、[JPY1 支援] というダイアログが表示され、右の [生成結果] テキストボックスには JPY ファイルの形式(ini ファイル形式)に変換されたテキストが入力されます。



あとはこれを出力するだけです。いったん [コピー] してクリップボード経由でテキストエディタなどに貼り付けてもかまいませんし、簡単なのは [ファイルに保存] ボタンを押下してダイレクトにファイルとして出力することです。



保存用のダイアログが表示されますので、フォルダとファイル名を適切に設定し、[保存(S)] ボタンを押下してファイルを保存して下さい。
同じ名前のファイルが既に存在する場合、上書きするかどうかの確認があります。


JPY ファイルの取り込み


このアドインはワークシートから JPY ファイルを生成するだけではなく、JPY ファイルを読み込んでワークシート上に値を展開する機能もあります。
使い方は簡単で、メニューから [JPY1 スクリプト解析...] を選びます。右クリックメニューで表示される同名の項目を選択してもかまいません。



ファイル選択のダイアログが開かれますので、取り込む JPY ファイルを選びます。



すると JPY ファイルの内容がワークシート上に展開されます。



手順はこれだけです。
取り込んだ内容は編集した上で、上記の手順で出力することが可能です。


Excel および専用アドインを使うメリット


それは一にも二にも開発効率が飛躍的に向上するということにつきます(特に処理内容の規模が大きいほど)。具体的には、


  • Excel は広く使われているため、新たに覚えることが少なくて済む
    • 専用ソフトでは、その使い方も覚えなければならない
  • ワークシート上に展開することで視認性がよくなる
    • 不具合を発見しやすい
    • 必要ならば罫線を引いたりセルの色を変更して見やすくすることも可能
  • Excel の強力な編集・管理機能が使える
    • 値のコピーや連続データの作成などが容易
    • UNDO 機能なども利用可能
    • JPY ファイル1個がワークシート1枚に相当しており、ブック単位でまとめ管理することが可能
  • Excel の豊富な数式や演算機能が使える
    • 位置座標やα値などのパラメータを連続的に変換させたいとき、適切な数式を設定することで簡単に値を設定することが可能
    • 適切な方程式を作る能力があれば、振り子運動や放物線などの複雑な動きも自在(高校数学程度)
  • パラメータ名のタイプミスがなくなる
    • あらかじめ用意されているので値だけ入力すればいい
    • JPY ファイル取り込み時には不適切なパラメータ名をチェックする機能あり
  • 試行錯誤と調整が格段にしやすい(後述)

これらのメリットがあります。


特に言及したいのは試行錯誤と調整のしやすさです。


既に何度も言及していますが、アニメーションというのはタイミングや位置の調整にあんがい手間がかかるものです。動作して表示を試し、直し、また試し、直し・・・というサイクルを何度も繰り返して完成版を仕上げることになるでしょう。


まあ、これはアニメーションに限ったことでもないのですけどね。
一発で完成させて後から手を入れない、というのは書道くらいのもので、それ以外の表現活動、つまり文章を書くにせよ、絵を描くにせよ、曲を作るにせよ、プログラムを作るにせよ、みな後からちょこちょこ手を入れる作業は免れないものです。


このアドインはその点についてのちょっとした工夫があります。具体的には


  • 出力範囲を指定する仕組みなので、出力したくない範囲は指定しなければいい
  • 非表示にした行/列は出力されないので、テストのために一時的に出力させないことが出来る

というようなことが可能です。
つまり行(セクション)で出力範囲が選べるので、アニメーションを部分に分割してここに動作検証する、ということがやりやすくなっていますし、列(パラメータ)単位での出力を制御できるために、このパラメータを設定したら/しなかったらどう見えるか、というようなことを試すにも便利なわけです。
必要であればワークシートを複製することで、幾つかのバリエーションを試すことも可能でしょう。


まとめとおさらい


今回「開発編」として、Excel を用いて JPY ファイルを生成するためのアドインの紹介と、そのインストール方法および使い方を紹介しました。


これをもちまして、当チュートリアルはいったんの終了となります。
この拙いテキストがシナリオ作者諸氏、そして制作を志しつつも苦労されている皆様のお役に立つことを願ってやみません。


2018-09-09
fge


戻る:アニメ編(その十)

*1 紹介しませんでしたが、動画を撮影するために作成したものでは四千行を超えたものもあります

シェアボタン: このページをSNSに投稿するのに便利です。

コメント

返信元返信をやめる

※ 悪質なユーザーの書き込みは制限します。

最新を表示する

NG表示方式

NGID一覧