|| 「踊る金狼亭」TOPメモ箱>シナリオ減量化

対応】 CW:1.20○/1.28○/1.29○/1.30○
  1. 減量化:メニューカードにおける画像参照
  2. 減量化:画像関連以外のテクニック

減量化:メニューカードにおける画像参照

これは、TED様から教えていただいた方法です。わりと知られているやり方だそうですが、CardWirth Editor のヘルプには載っていないので、ヘルプだけ読んでシナリオを作っていた私は知りませんでした。
基本的な事柄はヘルプに網羅されていますが、ヘルプに載っていない中にも重要なテクニックはあると思います。このシナリオ減量法は、その1つと思われるので、まだご存知ない方のために、ここに紹介します。
シナリオ内容を全く変えないで減量化できるところが、この方法のミソです。

この項のタイトルにある「メニューカード」というのは、エリア上に置くカードです。
メニューカードに画像を表示する方法には、以下の2つがあります。
(1)イメージ格納
カードそのものに画像データを格納します。
読み込み先に指定した画像ファイルの内容が、エリアデータ内にそっくりコピーされます。
(2)イメージ参照
シナリオフォルダ内の画像を読み込んで表示します。
エリアデータには参照するファイル名が書き込まれます。
ここまで前置き。以下、やり方です。

まずは結論から言ってしまいます。
 同じ画像をシナリオ内の複数箇所で使う場合、メニューカードではイメージ参照にする。
これだけです。
他に同じ柄の絵が無いか探すべき場所は、
  1. メッセージやセリフコンテントで参照する画像
  2. エリア背景として使用する画像
  3. メニューカードで使用する画像
です。
(※シナリオ全体でエリア上のカード1枚でしか使わない場合は別扱いです。理由は後述します。)

同じ絵柄のメニューカードを複数作って、それぞれイメージ格納を行った場合、格納した数だけ画像がエリアデータに書き込まれ、全く同内容の画像ファイルがシナリオフォルダ内に複数あるのと同じ事になります。
セリフや背景など他で参照している画像をメニューカードに使う場合も、参照用としてフォルダから動かせない画像がエリアデータの方にもコピーされ、やはり同内容の画像が複数あるのと同じ事になります。
はっきり言ってこれは無駄です。

イメージ格納の場合
カードごとに画像情報が付加される。
例えば同じ画像を格納したカードが3枚なら:
[img:格納]
  データ量 = カード設定3枚分 + 3個の画像

フォルダ内参照の場合
カードに画像情報を内包させず、シナリオフォルダ内に置いたビットマップファイルから読み込む。
例えば同じ画像を参照したカードが3枚なら:
[img:参照]
  データ量 = カード設定3枚分 + 1個の画像


【シナリオ全体で1箇所しか使わない画像について】
エリア上のカード1枚でしか使わない画像がある場合、それは格納にした方が全体のサイズが減ります。
参照の場合は、エリアデータに参照先のファイル名が書き込まれ、
となるからです。

ただ、ファイル名が余分と言っても、通常ならファイル1個分が数十バイトといったところでしょう。
高速回線と大容量HDDが普通になった今、これが無駄とまで言えるのかどうかは微妙です。
もちろん節約できる所はした方が良いには違いありませんが、画像の著作権者情報を分かりやすく整理するため、敢えて参照にする選択もありだと、個人的には考えています。

[ ▲上へ ]

減量化:画像関連以外のテクニック

シナリオ減量化で最も有効なのは、画像周りの減量だと思います。
最も容量を食う分野は、節約の効果が現れやすい分野でもあります。可能な場合は画像自体のサイズを減らす(減色・圧縮)、格納と参照を上手く使い分けるなどの方法で、結構減量できるはずです。
ここでは、それ以外の方法をご紹介します。
後ろの方は「塵も積もれば」的な物で、実行する価値があるかどうか、判断は人によって分かれそうです。
ご参考までにどうぞ。

[ ▲上へ ]