ステージによるキャラ変色の考察
KFA1.4では、背景の色合いによってキャラの色も、背景に合わせた色に染まるというのはお気づきだと思います。
ところが、stage.datの絵の重なり方によっては、暗いステージなのにそれほどキャラの色が黒くなっていなかったり、
一見普通のステージなのにキャラが青っぽくなってしまっている場合があります。
この色はどういう基準で決まっているのかを少し調べてみました。
結論から言うと、stage.datのデータに入っている全ての画像の平均値でキャラの色が決定するようです。
何当たり前のこと言ってんだと思うでしょうが、これにはちょっとした注意点があります。
それは、「絵が重なっていて見えない部分の色も平均計算の要素に入ること」と
「その色がステージ全体を占める割合が高ければ高いほど、平均計算の要素として強くなる」
ということです。
つまり、背景の一番奥にでっかい真っ白(左上に透明色がもう一ついるが)の画像を配置していれば、
その画像が見えないながらも、キャラの色は白っぽくなるわけです。これをかつて某人が、「背景の
一番奥の画像によってキャラの色が決まるから、一番奥に真っ白の画像を置けばいい」と説明し、
それに対してある人が、「実践したらキャラの色が必要以上に白っぽくなった」と反論したわけです。
これはつまり、前者の人は、たまたま黒っぽい背景に、白の要素を加えた結果、平均値が中和されて
ちょうどよい色になり、後者の人はたまたま白っぽい背景に、さらに白を加えてしまったため失敗したのでしょう
というわけで、真っ白の背景の裏にいろんな大きさの黒画像を隠し置いて調べてみたところ、
やはり、白と黒の比が全く同じときには元のchara.bmpのままの色合いになり、黒画像が小さくなるほどに
キャラが白っぽく染まっていきました。
つまり、完全に色の比を計算することはムリに等しいですが、ある程度感覚で予想して背景の色を
中和することは可能だということです。暗ければちょうどいい大きさの白画像を、明るすぎれば適度な黒画像を
青が強ければ、緑と赤のツートンカラーの大きい画像を(黄色一色でもいいのかもしれないが)裏に仕込んでおけば
良いだけなのです。なお、この際は必ず「左上端に透明色をもう一色」加えることを忘れずに。
逆に、これを応用すれば、好きな色にキャラを染められますね。暗い地下室の中で紅くキャラが照らし出される
ホラーっぽいステージなんかカッコよさげです。