位置情報をビットフィールド(フィールドがORされる順序など)に格納するにはどうすればよいでしょうか。
背景:昨夜、ゲームエンジンの一部を書いているときに、頭に浮かびました。色を記述しようとしているとしましょう。その一部として、記述子(およびその順序)に存在する色があります。たとえば、今日のほとんどのグラフィックカードには次のカラーオーダーがあります。
RGBA
BGRA
次のフラグを使用して、サポートされている色を説明できます。
None = 0x0
A = 0x1
R = 0x2
G = 0x4
B = 0x8
ただし、これらのフィールドを使用するA | R | G | B
ことは、と同じですB | G | R | A
。位置依存性を追加するために使用できるフラグや操作をどのように設計しますか?独占権を追加するためのボーナスマーク(たとえば、位置1に配置することはできません)、R
およびG
ユーティリティ(この場合はシナリオで使用できる巧妙な方法)。