滑らない駒は簡単に理解できたのですが、滑る駒が苦手でした。
現在、64 個のビットボード (正方形ごとに 1 個、配列に保存されていない)、およびマスクされた行用に 8 個のビットボード、クリアされた行用に 8 個のビットボード、マスクされた列用に 8 個のビットボード、クリアされた列用に 8 個のビットボードがあります。 、ピースの種類ごとのビットボード。
ビショップとルークの正当な動きを生成する際に、列/行で最初に占有された正方形を取得すると想定していると聞きました。
私の質問は次のとおりです。
- ルークがどこにあるのか、適切なマスクと一緒にどのように知っていますか。
- ビショップの場合と同様に、対角線で最初に占有された正方形をどのように正確に取得しますか.
- 後の時点で私のタスクに役立つ他の一般的なビットボードを知っている場合は、それらを教えてください.
現在、私はブランチなしでそれを行っており、使用するブランチの量を抑えたいと思っていますが、ここでいくつかが必要になると感じており、この問題を解決するための最も効率的な方法に興味があります.