★☆ キャラ制作奮闘記 ☆★
(2001.11.06)
SNDファイルを作ってみよう
音。
やはりこれがないと、キャラとしてはちょっと淋しいよね。
ちゅうことで、SNDファイルをこさえてやる訳だが・・・
SndMaker を使用してSNDを作る場合、ちょっとした準備が必要です。
そもそも SndMaker は、DOSプロンプト上で動作するアプリケーションなので、GUIを持っていない。
単純に SndMaker を起動すると、SNDファイル名の入力を促され、その後はWAVファイル名、グループ番号、アイテム番号の入力を繰り返すことになる。
登録する音が30種類あれば、30回これを繰り返さなければならない。
1回限りの作業ならそれも「あり」でしょうが、途中で音を追加したくなったりした場合、SNDファイルそのものを一から作り直す必要が発生するので、毎回そんなことはやってられない。
Mugeneratorでも使えば、音の「追加」もできるようだけど、いろいろ黒い噂(笑)も聞くので、やはり SndMaker を使うことを推奨したい。
ではどうするか。
それには、DOSプロンプトのリダイレクト機能を使う。
ちょっと話が横道にそれるけど、解説しておこう。
リダイレクト機能が何のことかわかっている人は、読み飛ばしてちょうだい。^-^;
そもそもDOSプロンプトというのは、「Windows」以前のOSである「MS-DOS」との互換性のために存在している・・・というか、「名残」と言う方が正しいかもしれませんね。(笑)
昔々のその昔、パソコンの電源を入れると、現在の様なGUIを持たない、DOSプロンプトの様な味気ない画面が起ち上がってきていた訳です。
で、そのDOS上では、ユーザーはコマンドを入力して、パソコンに仕事をさせていた訳です。
例えばこんな感じ。
C:\> DIR
・・・「DIR」ってのは、ディレクトリの情報を表示しなさいっていう命令ですね。
まぁ、そんなことはどうでもよろしい。^-^;
ここで知っておきたいのは、DOSの場合、コマンドの実行にあたり「標準の入力装置」と「標準の出力装置」が暗黙のうちに指定されている、ということ。
上記の例では、ただ単に「DIR」とたたいただけなんだけど、これは入力装置と出力装置の指定を省略していることになる。
省略してあるので、入力装置としては標準の「画面からの入力」が採られ、出力装置としては標準の「画面への出力」が採られているわけ。
この「標準の」入出力装置を切り替える機能を、「リダイレクト機能」と呼ぶ訳です。
上記の例の場合だと、例えばDIR命令の実行結果の出力先をプリンタに切り替えるとすると、次の様になる。
C:\> DIR > PRN
これは、「DIR 命令を実行して結果をプリンターへ出力しなさい」、という意味になる。
それとか、
C:\> DIR > C:\DIR.TXT
こうすると、DIR の実行結果が、DIR.TXT へ出力される。
さて、これを踏まえた上で、話を SndMaker に戻そう。
SNDを作り直す度に、毎回毎回、同じパラメータを入力してなんかいられませんよね?
なので、入力するパラメータをテキストファイルとして作成しておいて、これをコマンド入力元とするのだ。
例えば、SND.TXT というファイルに、入力パラメータを入力していたとすると、
C:\> SNDMAKER < SND.TXT
としてやれば、何度でもSNDの作り直しが楽にできてしまう。
長々とキーボードをたたかなければならないパラメータを、テキストファイルにしてしまう訳ね。
ちなみに上記の SND.TXT の内容(例)としては、次の様になる。
Athena94.snd 1AD2.wav 11 0 1AEB.wav 40 7 1AF7.wav 40 8 1AF6.wav 40 9 1CC9.wav 110 0 : : :
1行目がSNDファイル名で、以下、WAVファイル名、グループ番号、アイテム番号・・・と続いている。
つまりは、キーボードをたたいて画面から入力する内容そのもの、である。
これを用意しておけば、たった1行コマンドを入力するだけで、SNDファイルの作り直しができる訳だ。
もちろん、音を追加する場合は、このテキストを更新するのを忘れないように。(笑)
あと余談ですが。
音の登録順序は、グループ番号の若い順に登録するのが望ましい(必須だったかも)とされています。
SND用のテキストファイルを記述する際には、このことに留意してくださいね。
以上、ここまでが今回のお題です。
以下は、余録・・・というか、宣伝というか。(笑)
さて、SNDを作ったなら、今度はそれをCNSにて使用する訳ですよね?
どの音を何番で登録したか、いちいち覚えてもいられませんから、みなさんいろいろ工夫されていると思います。
私のやり方としては、
何番に何というWAVファイルを使用する、その内容は○○だ
という一覧表を作るようにしている。
例えば、こんな感じね。
---------------------------------------------------------------------------------------- 1000,0 : 1acf.wav : 「サイコボール」 1300,0 : 1ad0.wav : 「え〜いっ」サイコリフレクター 1200,0 : 1ad1.wav : 「フェニックスアロー」 11,0 : 1ad2.wav : (死) 195,0 : 1ad3.wav : (あくび) 3000,0 : 1ad4.wav : 「はぁ〜〜〜っ」(気合い溜め、シャイニングクリスタルビット) 190,0 : 1ad5.wav : 「アテナ、いっきまぁ〜す」 ----------------------------------------------------------------------------------------
こうしておくことで、音の管理ができるようにしている。
CNSにて音を使用する場合に、この一覧を検索する訳ですわ。
で、最近になって気づいたのが、ひょいひょいっと音を追加していると、この一覧とSND作成用のテキストの内容とが、必ずしも一致しなくなってくるんですな。^-^;
2つのものを同時にメンテすることになる訳で、これが結構めんどくさいし、なかなかに抜けてしまう。
そうすると、正しくCNSで音を指定している筈なのに、「音がならない」「意図したものとは違う音が鳴る」なんてことが起きちゃう。
そこで(ものぐさな)私は考えた。(笑)
管理用の一覧から、SND作成用のテキストが自動生成されれば便利じゃん!
ということで。
その為のツールをこさえてみました。(笑)
Microsoft の Access を使って、音の管理表を作ってみた。
SNDに登録するグループ番号とアイテム番号をキーにして、用意した音のWAVファイル名をどんどん登録していくわけ。
その音が何の音なのか、日本語でメモを入力できるようにもしてありまする。
ちょうど、上の例の一覧表のイメージですな。^-^;
で、どんな順番で入力しても、DBなので、ちゃんとグループ番号順に並べ替えてくれる。
音を追加する場合も、順番なんて気にせずに、一覧に追加するだけでOK。
さらには、ここからSND用のテキストファイルも出力できちゃう。(笑)
っていうか、それだけのものなんですが。^-^;
管理表とSND用テキストの2重管理をしなくてすむので、私的には結構便利で、重宝している。
もしも私と同様のやり方(音の管理ね)をしていて、やっぱり2重管理がめんどくさくて困っている人がいらっしゃるなら、私までご連絡ください。
拙作のツールをお分けいたします。
Access2000用とAccess97用の2種類が提供できます。
・・・落とし物ページに置いてもいいんだけど、Access を持っていて、かつ使ったことがある人でないと
使いづらいと思うし、用途が結構限定されるので、それほど需要はないだろうな、と。^-^;
万一、メールが殺到するようなことがあれば考えますが、まずないでしょうし。^-^;
何より、不特定多数の方にばらまいてしまうと、サポート仕切れなくなるし。^-^;
ちょっと、初期設定にクセがあるかも知れないんですよ、このツール。^-^;
(少なくとも、「Accessって何?」という御仁には、おすすめ出来ませぬ。(爆))
と、随分と長文になりましたが、今回はこれにて。(笑)