Connect 4 ゲームの最後のゲームを終了しています。タイルをスロットに表示するだけでなく、実際にドロップダウンさせたいと思っていましたが、z オーダーの問題があります。
シーンを描くには、まずボードの長方形を描き、背景色で塗りつぶして穴を開けます。問題は、タイルのスペースがないことです。何よりも先にタイルを描いてみました。ドロップダウンしますが、穴の後ろには見えません。タイルの上に黄色一色の上に黒一色で描かれているからです。黄色が最初に描画されるため、黒の後に描画することはできませんが、黄色の前にも描画できません。ここにきれいな写真があります:
解決策にはいくつかの可能性がありますが、それぞれに問題があります。
穴がすでに切り取られているボードのビットマップを使用します。
- タイルを描画してから、透明度キーを使用して奇妙な形のフレームを描画できました。
StretchBlt
異なるアスペクト比を含む異なる解像度で同じように見えるように実際にボードを引き伸ばすでしょうか? 写真を参考にすると、どの解像度でもこのようにウィンドウにフィットします。
ピクセルごとに移動し、何を描画するかを確認します。
- シンプルだけど、すごく遅くない?各ピクセルを通過するのはそうではないかもしれないと聞いたことがありますが、実際にはどこでも確認していません.
(私が最もうまくいくと思うもの) - ボードを描画しますが、上部のブラック ホールの代わりに、それらの領域でボードを透明にします。
- これは最小限の作業量であり、効率的には問題ないはずですが、どうすればこれを行うことができるでしょうか?
これらの解決策 (特に 3 番目の解決策) は妥当ですか? それ以外の場合、この z オーダーの問題を解決する簡単な方法はありますか?