私たちのゲームデザインでは、(できれば) マップ画像の背景レイヤーをチェックできるようにすることで、衝突検出を実装したいと考えています。現在 .png を使用していますが、問題は透明度チャネル (アルファ) が最上層 (透明度を決定する) にとって有用な情報であることです。画像を透明にしない限り、このレイヤーをビットマスクとして使用することはできません。私たちのゲームはタイルベースの RPG であるため、チェックは簡単です (すべてのブロック サイズのピクセルを繰り返します。アルファ = 1 の場合、このブロックはマップ ソリッドであり、通り抜けたり踏んだりすることはできません)。
代替手段 (私たちが考えることができるもの) は、あまりにも多くのセットアップを必要とします。たとえば、2 番目の画像は完全に一致する必要があるため、エラーの余地はありません。また、画像内の個々のブロックを歩行可能として指定するには、この情報を画像に保存するか、これを手動で設定する必要がありますが、これは強引すぎます。透明レイヤーのアイデア (それを機能させる方法を提案できる場合) は、Photoshop で画像に影を付けて透明な画像を作成するだけで、ほとんど作業を必要としないので理想的です。
TLDR; 透明度をレンダリングせずにビットマスクの形式としてJavaでpngのアルファチャンネルを使用できますか? 複数のレイヤーを保存できる、swing で簡単に処理できる画像形式はありますか?