0

画像の赤/緑/青のチャンネルを使用して、ゲーム用のカスタム マスクを作成しています。赤と緑のチャンネルはグラデーション イメージになり、青のチャンネルには単一ピクセルのマーカーが表示されます。

ここに画像の説明を入力

その画像の青いピクセルは、見えるように 1 ピクセル以上に拡大されています。うまくいけば、それが私の意味を伝えます。赤のチャネルはキャラクターをマスクするために使用され、緑のチャネルはいくつかの項目をマスクするために使用され、青のチャネル (小さな点) はマーカーを示すために使用されます。各青色ピクセルは、実際にはわずかに異なります (255、254、253、252 など)。問題は、赤と緑のチャネルが完全なグラデーションであるため、青チャネルのデータが 8 ビット png として保存されると、完全にかき消され、それらのピクセルが消えてしまうことです (カラー テーブルが 256 色すべてを赤と緑の色)。だから私は、基本的に「何があっても青の値を正確に保つ」と言って、青チャンネルにハード保存をすることが可能かどうかを理解しようとしています. これじゃない」

そしてアイデア?IM でこれを行う方法があればいいのですが、8 ビットの png を保存するときに使用される 256 色のパレット全体を手動で定義する方法を見つけ出すことをお勧めします。私は基本的に画像全体のピクセルを読み込んで独自のテーブルを作成し、何があっても青のチャンネルを保持するようにしました。

4

1 に答える 1

1

最善の答えが、期待していたものではない場合があります。

reddit に投稿された同じ質問に従って、青いピクセルの場所を保存するツールを作成してから、単に画像 (sans-blue) を 8 ビット png として再エンコードする方が理にかなっています。

于 2013-06-10T07:10:11.177 に答える