VATTLE STYLEのZERoです。
画像について少々テクニカルな話をいたします。
同人ゲームを制作している駆け出しの方にお聞きいただければ創作の手助けになるかと思い書き連ねました。
コメントで葵様が絵の縁が透明に出力されないというお悩みをおっしゃっていました。
考えられる原因として、出力形式をPNG-24ではなく、PNG-8に設定してしまっている可能性があります。
PNGには二つの形式があります。
PNG-8はデータ要領が小さくなるものの、表示した際の画像の縁が不透明なドットで表現され角ばります。
(よそのサイト様ですでにレクチャーされているPNGについての説明は割愛いたします。)
左がPNG-8形式、右がPNG-24形式で出力した画像データです。
PNG-8形式は縁の透明部分が強制的に指定した背景色(マット色)と合成され、きれいな見た目に出力されずに縁にジャギー(上画像では青色)が残ります。
PNG-24形式は縁の部分が透過されて線画がふつうに表示されます。
よって、先の件の解決方法はPNG-24形式で出力すればよいのです。
しかし、ゲーム作者として気にするところはそのデータ要領で、画像左は40kb(PNG-8)、画像右は120kb(PNG-24)で、サイズに差があります。
同じ画像データをPNG-8で出力するとPNG-24と比較しデータサイズが約32%(比較-68%)に減ります。
PNG-24は美しいのですがPNG-8と比較しデータ要領が約3倍膨らみ、表示しているだけでマシンに負荷がかかります。
一方、透明部分を表現しないことがPNG-8のデータ要領が小さくなる仕組みになっています。
ゲームで表示させる画像にCPUパワーを吸収されすぎると動作が鈍くなるため、動きがある場面ではこのように画像は軽くなくてはなりません。
しかし、縁にジャギーがある汚いPNG-8画像はどんな場面で使用用途があるのでしょうか。
それは、背景を縁で設定したマット色と同じ色(もしくは近い色)にすれば、ジャギーが目立たなくなります。
例えば、下のようなPNG-8で出力した低データの画像をゲーム上できれいに扱う場合は、
PNG-8画像
+
PNG-8画像のデータ出力の際に指定したマット色と近い色の背景画像を下地にして、
↓
二枚を表示するとジャギーが背景色にまぎれて見えなくなります。
例えばキャラクターが森にいるとしたらマット色に緑色を選ぶ、暗闇にいるのならばマット色を黒色を選ぶなどします。
ちなみに、呪い仕掛けな女神たちのバトルシーンでもPNG-8画像を使用しています。
画面下のキャラクターはPNG-8で出力していて、縁にジャギーが残っています。
しかし、出力する際にあらかじめゲーム上で下地に使う色をマット色に設定することで、画面ではジャギーが背景色に溶け込み見えなくなります。
マリアやポポなどの騎士キャラクターは元サイズが小さく(見た目も重要なので)PNG-24ですが、ハッフンパッフンはPNG-24だとサイズオーバーになるためPNG-8にしています。
ゲーム画面が鈍く重く感じたらPNG-8画像に切り替え要領を減らし、ユーザーへの負荷を軽くできます。
ZERo
「呪い仕掛けな女神たち」ホームページサイト