環境依存の不具合について

# 環境依存の不具合

エンドユーザ(二次ユーザ)の環境の不具合に起因する、吉里吉里の不具合とその対策です。
吉里吉里の制作においては環境依存の不具合が出ないように尽力していますが、コンピュータの設定や構成は非常に多様である為、環境依存の不具合はどうしても発生してしまいます。
個別の症状に対する対処で対応できる場合もありますが、全般的には、以下のような対策を講じていただいてください。

- ドライバを最新の安定した物にしていただく
- 常駐物(とくにウィルス対策ソフトウェアやメモリクリーナー系ソフト、ウィンドウ外見変更系ソフト、Windows互換シェルなど、他ソフトと競合を起こしやすい物)をはずしていただく
- 各種チェックツール(「ディスクのチェック」(OS標準のディスクチェックツール)、memtest86など)でコンピュータをチェックしていただく
- HDDの残り容量は十分あるかをチェックして頂く
- WinFAQ (おだ氏のページ) などを参照して、似たような症状が起きてないかを探し、それに応じて対処して頂く
- いったんセーフモードで起動してから通常モードで起動し直して頂く
- CPUアクセラレータを使用している場合は、CPUの特定機能に制限がある場合がありますので、CPUアクセラレータのマニュアルをよく読んで頂き、場合によってはエンジン設定で個別のCPU機能を無効にする必要があります (例: http://buffalo.melcoinc.co.jp/qa/cpu/b4590010.html の場合はSSEを無効にしてください)
- OSを再インストールしていただく

吉里吉里のエンジンに対して設定できるオプションは、ほとんどが環境依存の不具合の対処の為にあります。コマンドラインオプションもご覧ください。

# 環境依存の症状

下記において「エンジン設定」とは、エンドユーザ向け設定ツール (エンジン設定.exe)のことです。

インストールしたデータが壊れている
  症状としては「読み込みエラーが発生しました」等の読み込みエラー系エラーの発生や「作品実行中にフリーズする」、「EAccessViolationエラーが出る」、そのほか予測不可能な動作をします。
  インストールしたデータが壊れている可能性があるので、「ファイル破損チェックツール」などを用いて、インストールしたデータが破損してないかを確認していただいてください。
フルスクリーン化に失敗する
  フルスクリーンに失敗する場合、あるいはフルスクリーンからの復帰に失敗する(エラーが出る、フリーズする等の)場合は、エンドユーザの環境のDirectDrawに問題がある可能性があります。「エンジン設定」にて「フルスクリーン切り替え方法」を「ChangeDisplaySettings API」に変更していただいてください。
画面切り替え時やスキップ時にフリーズする
  画面切り替え(トランジション時)やKAGでのスキップ時など、画面描画が頻繁に起こる場面でフリーズする場合は、ディスプレイドライバに問題がある可能性があります。
  ディスプレイドライバのバージョンが最新の安定した物であるか確認し、古い場合は最新の安定したバージョンに変えて頂いてください。
  あるいは、「エンジン設定」にて「ダブルバッファリング方式」あるいは「垂直同期待ち」の設定を変えると改善する場合があります。
  nVIDIA製のグラフィックカードに付属してくるユーティリティである「nView Desktop Manager」をお使いの場合は、このユーティリティをアンインストールするか、無効にして頂いてください。
画面描画が異常に遅い
  とくにフルスクリーン時に吉里吉里が画像を拡大して表示する場合や明示的にダブルバッファリングを有効にしている場合に、画面描画が異常に遅い場合は、「エンジン設定」にて「ダブルバッファリング方式」あるいは「垂直同期待ち」の設定を変えると改善する場合があります。
  また、モニタ側ではなくてエンジン側で拡大が行われている場合は、拡大に伴ってパフォーマンスが劣化する可能性があります。この場合はエンジン設定にて「フルスクリーン時の画面解像度」を「最も近い解像度」にすると、ディスプレイ側で拡大が行われるようになりますが、ディスプレイによっては正しいアスペクト比で画像を表示できない可能性があります。
画面が真っ暗のままになる、あるいは画像が乱れる
  とくにフルスクリーン時に吉里吉里が画像を拡大して表示する場合などに画面が真っ暗のままになる、あるいは画像が乱れる、あるいはフリーズする場合は、「エンジン設定」にて「ダブルバッファリング方式」あるいは「垂直同期待ち」の設定を変えると改善する場合があります。
ビデオ再生に失敗する
  オーバーレイによるビデオ再生に失敗する(エラーが表示される、フリーズする)場合、あるいはビデオ再生直後にフリーズする場合は、ハードウェアアクセラレーションを無効にすると改善する可能性があります。「画面のプロパティ」(デスクトップ上を右クリックして表示されるコンテキストメニューで「プロパティ」を選択して表示されるダイアログボックス)の「設定」タブで、「詳細設定」ボタンを押すと表示されるダイアログボックスの「トラブルシューティング」タブの「ハードウェアアクセラレータ」のツマミを、最大から順に「なし」の方向に動かしていって試行していただいてください。
  スクリプト側で、ビデオの再生をしないような設定を設けることもお勧めします。
  あるいは、「エンジン設定」にて「ダブルバッファリング方式」あるいは「垂直同期待ち」の設定を変えると改善する場合があります。
サウンドがとぎれたり、鳴らなくなったり、サウンド再生中にフリーズする
  サウンドカードや環境によっては、ブツブツと再生がとぎれとぎれになったり、ノイズが乗ったり、途中から音が聞こえなくなったりします。場合によってはサウンドの再生中に限ってフリーズするなどの症状が現れます。
  それがトランジション(画面切り替え)や重たいエフェクト中に発生するならば、エンジン設定で「システム全般-低優先度」を「する」に設定するか、「システム全般-CPU使用率低減」を「する」に設定することで改善する場合があります。
  そのほか、エンジン設定で、「サウンド-DirectSound ソフトウェアミキシング」の設定を変更しても改善する場合があります。
  あるいはコントロールパネルの「マルチメディア」(または「サウンドとマルチメディア」や「サウンドとオーディオ デバイスのプロパティ」)の「オーディオ」タブの「音の再生」の「詳細設定」を開き、「パフォーマンス」タブの「ハードウェア アクセラレータ」のスライダーを「なし」の方向に徐々に動かしつつ試行していただいてください。
操作がうまくできない
  マウス移動支援やマウスジェスチャー実現ツールなどのソフトウェアが常駐していると、作品の操作をすることができない場合があります。このようなソフトの常駐を解除していただいてください。
  サードパーティの(OS標準ではない)マウスドライバを導入していると、操作系に不具合を生じる可能性があります。このような場合はサードパーティ製のドライバを無効にするかアンインストールし、OS標準のドライバを使っていただいてください。
  ゲームパッド対応ソフトウェアにおいてゲームパッド(ジョイスティック)がつながっている場合、パッドの不具合が原因で作品を操作できない場合があります。パッドの上に物が乗っている為にパッドのボタンが押された状態になってしまっていないかを、確認していただいてください。
  また、ゲームパッド(ジョイスティック)が接続されていないと、パッドのボタンが押されている状態として検知してしまう環境があります。このような場合は、パッドのドライバを無効にしていただいてください。
  ゲームパッドやジョイスティックの軸のセンターの調整が不十分のため操作に不具合がでる場合があります。この場合は、コントロールパネルの「ゲーム コントローラ」から、ゲームコントローラの調整をしていただいてください。
  どうしてもパッドのドライバを無効にできない場合は、吉里吉里側でパッドを使用しない設定にできます。エンジン設定で「パッド使用可否」を「使わない」に設定していただいてください。
  サードパーティ製のマウスドライバを使っている場合、ホイールでの入力できない可能性があります。この場合は、エンジン設定で「マウスホイール回転検出方法」を「ウィンドウメッセージ」に設定していただくと改善する可能性があります。
スラッシングが頻繁に起こる
  メモリ不足が原因で、スラッシング(大量のスワップイン・スワップアウト)が頻繁に起こる場合があります。
  エンジン設定で「システム全般-メモリ使用量」を「低い」に設定すると改善する場合があります。
  ただし、パフォーマンスが低下しますので、「システム全般-メモリ使用量」のオプションは変更せずに、「グラフィック-画像キャッシュ制限」を「4MB」や「8MB」などの比較的低い値に設定することで、パフォーマンスをあまり低下させずにメモリ使用量を減らすことができる可能性があります。