開発ノート

常に構築中です。

巻頭言

このページには同人ゲームを製作する際、わかばかおるがはまったトラップの数々を、TIPSとして紹介しようと思ってます。

ずっと前から作ろうと思っていたのですが、時間が取れず後回しになっていました。

最近記憶力も落ちてきていますし、備忘録的な意味合いもあります。
基本的に気づいたときに書き足していく予定なので、記事が巨大化した場合は、ページを分離するかもしれません。

これから同人ゲームを作ろうと考えている人たちの参考になれば幸いです。

2011/01/30 わかばかおる

Audacity

サンプリングレートの変換
  • 音声ファイルのサンプリングレートを変換する方法。
  • ノベルツールによってはサンプリングレートが指定されているのでこの方法で変換すると楽。
  • 変換対象ファイルを読み込み、赤丸の部分を変換後のサンプリングレートの値に変更し、保存する。

audacity01

 

スペクトル分析
  • 音質を見極めるときに参考になる。音は環境によって聞こえ方が異なるので、耳は当てにならない。
  • 複数の声優さんにお願いするとき、それぞれの音質を比較するときに参考になる
  • 波形の一部を選択し、「解析」→「スペクトル表示」

audacity02

 

エンベローブツール
  • LiveMakerのCINEMAでBGMを使用するとき、演出上、BGMの一部の音量を小さくしなくてはならない場合にこの方法を使う。
  • 声優さんのボイスとかぶるときに、BGMの特定の部分を小さくしたいとか。徐々に音圧を上げて場面を盛り上げたいとか。
  • 赤丸の部分をクリックして、図のように音圧をいじって保存。この例は出だしの部分を小さくし、徐々に音圧を上げている。

audacity03

 

音圧の調整
  • 複数の声優さんにボイスを依頼したとき、それぞれの音声の音圧(音量)の違いが気になる場合がある。
  • 一方の音圧を他方の音圧に近づけたい
  • あまり大きく加工すると音質が悪くなるので、録音の段階でなるべくすり合わせを行っておく
  • 赤丸をクリックし、「波形(dB)」のグラフにすれば比較がしやすい。
  • 調整したい部分を選択後、「効果」→「増幅」を実行。

audacity04

テンポの変更

ループ動画に吐息のボイスをあてたときに、動画のリズムと吐息のリズムがあわないときがある(宅録であればむしろあう方がめずらしい)。このとき「エフェクト」→「テンポの変更」を使うとうまくいくことがある。あまり大きな変更値を設定すると、音質が激しく劣化するので、ほどほどにということになる。

LemoNovel

使用するエディターに注意
  • 保存するときに文字コードと改行コードを指定できるものを使う。
  • LemoNovelの場合文字コードは「UTF-8(BOMあり)」改行コード「CR+LF」
  • ビギナーで記述が間違っていないのになぜか動かない、というのは大抵この罠だと思う。自分もそうだった。
キャッシュサーバーに注意
  • 設置するレンタルサーバースペースにはキャッシュサーバーというのがある。
  • たとえば、公開後、スクリプトのミスに気づき、それを修正して、サーバーに上書きアップロードしても、すぐには変更が反映されない。「あれ、ローカルではちゃんと変更しているのに、サーバー通すと、古いままだっ なぜだ、ウキーっ」という現象。
  • サーバーが負荷分散のために、古いスクリプトをキャッシュサーバーに保存して、それを渡しているため。
  • キャッシュの更新時間はサーバーによって違う。コーヒー飲んで落ち着くしかない。
大文字小文字に注意
  • ファイルパスを指定するときに「./resorce/sound/door.mp3」と記述して、PC上では再生されるのに、サーバーに置いたら再生されない罠。
  • このケースは「Sound」と記述するところを「sound」と間違えていたため。
MP3はサンプリングレートに注意
  • 環境によって音がなったりならなかったり、ひどいときはハングアップするもよう。
サポートされている形式は、CBR(固定ビットレート)でサンプリングレートが44,100、22,050、11,025(Hz)、ビットレートが160、128、112、80、64、56、48、32、24、20、16、8(kbps)のものになります。(オフィシャルより引用)
  • この条件に合わないものはAudacityなどで変換する必要がある。
綴りのミスに注意
  • コマンドなどでスペルミスをすると痛い目にあう。
  • LemoNovelはシンタックスエラーなどを指摘してくれない。
  • エラー部分でLemoNovelの実行がとまらないケースもあるので発見が困難。
  • たとえば、「wait_PlayEnd=true」と記述するところを、「wait_PlayEnd=ture」とタイプミスとかね。この場合、LemoNovelはエラーを無視して、そのまま次のコマンドへ進行する。

LiveMaker

プロジェクトの規模に注意
  • プロジェクトが1GBを超えるとインストーラータイプでのマスターアップになる。
インストーラーの背景画像の大きさ
  • 264*160ぐらいだと思われ
アイコン
  • プロジェクトの規模が大きくなるとアイコンが登録されない。それが嫌な場合はインストーラータイプを選択。
変数
  • 通常変数はトップメニュー(メインチャート)に戻ると初期化されるので、SetArrayで配列を使っている場合は初期設定のタイミングに要注意。起動時のみ初期化を選ぶべき。
  • 通常変数は、「ゲーム終了」ノードでメインチャートに戻った場合のみ初期化される。
ファイルパス

音声再生のファイルを変数で指定する場合

sename=”hoge.ogg”

とし、シナリオノードで

?sename

とすればいいが、計算ノードで音を鳴らす場合

sename=”サウンド\\hoge.ogg”

と、フォルダを含めたファイルパスを指定しないと音が出ない。

また

sename=”hoge.ogg”

sename=”サウンド\\hoge.ogg”

シナリオノードで音を出した場合、どちらでも、LivePlayer(ビルド&実行)では音が出るが、マスターでexeにした場合、後者は音が出ない。これはかなり問題だと思う。

この現象はサウンドだけでなく、画像やムービーでも起こると思われる。

ボイスor効果音

音をリピートで流している状態で、画像選択ノードを通過すると、「ボイス」トラックは再生が止まってしまう。エッチシーンなどでバックで吐息をループさせ続けたい場合は「ボイス」トラックではなく「効果音」トラックを選択して回避する。

インストーラでのインストール先

マスターをインストーラタイプで作成し、インストール先を”Program Files(x86)”にすると、あとでマスターの修正が発生し、アンインストールしてインストールしなおしても、古いexeが残ってしまうので、最終動作チェックができない罠にはまる。

この現象はWindowsのUACという仕組みによるものらしい。これを回避するには、インストール先を”Program Files(x86)”にせず、c:直下など、別の場所に指定するしかない。

PlaneRunner

インストールしようとするとアンチウィルスソフトが警告する
  • 以前オフィシャル掲示板に報告されたことがあり、作者さんがアンチウィルスソフトの誤検知であると回答(現在は掲示板は見れない)
  • 気になる人はvirustotalで確認して各自判断。
Windows10Home32Bit
  • エラーで動かない。.NET Framework3.5を有効にしてもダメ。引き続き情報収集中(20170104)
Windows7(64bit)
  • 最新版であれば動くけど、PraToAviの出力が遅い。できればXP環境をマルチブートで残しておく方が良いと思われる
OSによって開けないファイルがある
  • マルチブート環境でXP上で作ったファイルを、7で開くとエラーになるケースがある。
  • XPでブートして読み込むと普通に開く。
  • エラーで絶望した時はXPで開いてみると幸せになれるかもしれない。
UNDOがないの?
  • 右ペインにある「ログ」のタグをクリックしてヒストリーを表示してクリック。
  • 大きく戻ったりするとエラーになることがあるので注意。どうしても大きく戻りたい場合はいったん保存した方が良いくらい不安定。
レイアウトビュー、オブジェクトビュー、キーフレーム上でのフォーカス移動は?
  • Zキーを押しながら左ドラッグで移動、右ドラッグで拡大縮小
PraToAviが動かないよ
キーフレーム上でのショートカット
  • CTRL+ドラッグで範囲選択
  • CTRL+Cでコピー
  • CTRL+Vで貼り付け
モーフィングオブジェクトの謎
  • 他のオブジェクトと比較すると滑らかに移動しない(1px単位?アンチエイリアスがかからない?)←これ間違ってました。PlaneRunner上で再生したときに、モーフィングオブジェクトがカクついて動いているように見えるけど、実際に動画出力すると滑らかに動いています。
  • 属性の「表示」「非表示」の切り替えに問題がある(初回だけ)
  • おなじリソースでもモーフィングオブジェクトに変換するとわずかに座標がずれる(配置で1pxほど位置を修正する必要がある)←(追記)これですが、モーフィングオブジェクトを作成するときにできる、メッシュの影響を受けているようです。メッシュの加減(アンカーの位置や細かさ)を調整すればずれ方も違うようです。
拡張エフェクト(ぼかし)は使わない方が良いかも
  • オブジェクトの窓で右クリックして作成する「拡張エフェクト」の「ぼかし」を使ったファイルを保存すると、エラーで二度と開けなくなることがある。
  • 不幸にしてこのエラーにはまったら、下記の方法を試して、ぼかしを適用していないファイルに戻るしかない。
保存したデータが壊れて俺\(^o^)/オワタ
  • PlaneRunnerは自動的にバックアップデータを履歴で保存しているので、そこから復活を試みる。

prb01

データが保存してあるフォルダの中を見るとこのようになっているので、そのなかの「backup」フォルダを開く

prb02

このように時系列でフォルダ名がつけられているので、この中から可能性のある時間帯のものを開く

prb03

すると中身はこのようになっているので、これらすべてを選択してコピーし、元のフォルダ(二つ上の階層)にすべて上書きペーストする。そして、PlaneRunnerでこのファイルを開きなおすと上手くいく…かもしれない

データが壊れる方法?

しっかりと再現していないので不確かな情報ですが、以下の手順を踏むと壊れる?

  1. リソースAをメッシュオブジェクトとして登録。
  2. メッシュオブジェクトに制御点を設定し、実際にレイアウトする。
  3. リソースA(元画像)にPhotoshopなどで修正を加え、リソースリスト上で、リソースAを「再読み込み」する。
  4. このまま保存をする。

回避するには、リソースの再読み込みをしたあとに、オブジェクトビュー上でメッシュの作成をしなおす?

再現性のあるエラー
  1. シーン(ファイル)を開く
  2. メッシュオブジェクトをオブジェクトビューで編集する
  3. シーンの保存
  4. PRを終了せず、そのまま他のシーン(ファイル)を開く
  5. メッシュオブジェクトを作成し、オブジェクトビューで編集し作成を実行するとエラー発生

回避方法→他のシーンファイルを読み込むときは一度PRを終了(再起動)する。

PraToAviで差分動画を出力するときの罠

PraToAviで動画を出力するときには、あらかじめPR側でバイナリ保存(pra形式)をする必要があるが、通常ファイル保存(xml形式)とセットであることに注意。praで出力したら同時にxmlも保存する必要がある。

たとえば、キャラの動画で衣服の差分動画を作りたいときに、衣服の表示をオフにして、xmlを上書き保存せずにpra形式のみ保存し、PraToAviで出力するととんでもない動画になる。

一つのシーンデータから大量の差分動画を取り出したいときにミスしがち。

と書いていましたが、間違っていました。正確にはデータの作成が終わり、xmlファイルを保存し、その後、差分動画作成のためにエレメントの表示(編集)をオン、オフに切り替えるだけならば、praだけ保存しなおせば、xmlファイルは上書きする必要ないです。

PraToAviでpraファイル読み込みに失敗する

エラーで読み込めない場合、PlaneRunnerで作成したメッシュオブジェクトのメッシュの設定を見直すと上手くいくときがある。「制御点設定ダイアログ」の「メッシュ作成設定」の「最少頂点距離」の値を大きくして、メッシュを粗く作り直すと読み込めることが多い。prmesh

Adobe Premiere Elements

PE8買っちまったよorz
  • おいらと同じく不幸にしてPE8を買っちまった人はこちらのサイトを参考にするべし。
おいおい、サイズのプリセットが少なすぎるんじゃね?
おいおい、PE8入れたらLiveMakerの動画再生が出来なくなっちまったんだけど?
モザイク処理の罠
  • 完成した動画のサイズを縮小すると、モザイクのピクセルサイズも縮小されるので、DLsiteさんの基準を満たさなくなる可能性がある。動画は静止画と違ってモザイクのかけ直しはかなりの手間となるので要注意。特にPEのガベージを使って部分的に処理している場合は再レンダリングで死ねる。
解像度の罠
  • ゲームにあわせるため、変態解像度(800*600)で動画を作ると、最後のプロモーションビデオでDVD標準規格(720*480)に出力するとき、アス比の違いからトリミングされる範囲が変わってくるので要注意。
DVDプレイヤーの罠
  • Windowsでは変態解像度のmpgでも再生できるが、DVDプレイヤーだと再生できないことが多い。標準規格にあわせるべし。
  • DVDプレイヤーによっては可変ビットレートでは処理オチすることがあるので、固定を選んだほうが無難(?)

SAI

misc.iniについて

2008/12/25に安定版として1.10が公開されました。個人的にこのバージョンの目玉はなんといってもナビゲーターのフローティング化だと思うのです。(これでデュアルモニターの使い勝手が向上します)

しかし、この機能を使うには同梱されるmisc.ini(_misc.iniをリネーム)ファイルを手動で設定する必要があります。詳しい説明はmisc.ini内のテキストを読んでもらうとして、問題はそのファイルをどこに保存するか。私はインストールフォルダで良いと思っていたのですが、実は違うようでして、私の環境の場合、”C:\Documents and Settings\username\Application Data\SYSTEMAX Software Development\SAI”内に保存することで設定が反映されました。

同じことで悩んでいる人が居るかもしれないのでここに記しておきます。

キーボードショートカット

PDFにまとめてみました

全体
よく使うものだけ

ただ、キーボードショートカットを多用すると、その無理のある指の動きが原因で、肩や首に負担がかかるので要注意。実際自分もやられた。

解決方法は、キーボードではなく、ゲームパッドなどのコントローラーを用意し、そのボタンにショートカットキーを割り当てる方法。これだと、負担が少ない。

実現するためにはJoyToKeyというユーティリティソフトが必要。無料でも使えるが、安いのでライセンス登録おすすめ。感謝をこめて自分も登録した。健康には代えられない。

おすすめのすばらしいツール

上記以外であるとすごく便利で優秀なツールを紹介。これがないと作業にならないレベル。

パースエディタ
  • KNDYさんのページ
  • ここのパースエディタは使い方さえ解かれば、強力な武器になります。
  • 背景を描くとき使用させてもらってます。
  • http://www33.atwiki.jp/kndy/

pe

 

Rekisa
  • 二つのテキストファイルを比較して、変更点をグラフィカルに指摘してくれる。
  • 共同作業などで、シナリオに手が加えられた、というときに威力を発揮。
  • http://frozenlib.net/rekisa/

rekisa01

 

LS
  • 指定したファイル・フォルダのリストを HTML/CSV/TXT 形式で出力します。(readmeより引用)
  • データ納品でファイル一覧をテキストデータとして取得したいときに便利。手写しだと間違えの元。
  • 作者さんが変わった模様。
  • http://www.vector.co.jp/soft/winnt/util/se509107.html
HashChecker
  • ファイルのハッシュコード(CRC-32やMD5)を比較し、ファイルの破損や改ざんが無いかチェックするためのツールです(readmeより引用)
  • 大きなファイルを転送するときに先方にMD5を伝えると安心。
  • http://www.vector.co.jp/soft/win95/util/se283188.html
VerticalEditor
  • 縦書きが出来るテキストエディター
  • 台本形式も楽に書けます。柱、ト書き、台詞は自動的にレイアウトしてくれる。
  • やはり日本人なら縦書きだと思う(キリッ
  • しかし、声優さんにファイルを渡すときどうするかが問題。声優さんが使ってくれてたら独自形式で渡して、先方で印刷してもらう。そうでなければ、普通の横書きのテキストに出力するしかない。
  • もしくはpdf形式で出力という手もあるが、レイアウトが崩れたりと、上手くいかない場合が多い。仮に上手くいっても、声優さんがpdfお断りなケースもあるので注意。
  • http://www.vector.co.jp/soft/win95/writing/se276951.html

ve01

 

Freemind
  • いわゆるマインドマップというやつです。
  • 作品のテーマを決めるときやアイディアを練るときに威力を発揮します。
  • 使用するにはJAVAのランタイムが必要なので、「JAVAうぜぇ~」という人には向いていません。
  • http://sourceforge.jp/projects/freemind/

freemind01

 

BunBackup