Microsoft DirectX 8.0 (Visual Basic) |
D3DCAPS8 など、Microsoft® DirectX® の型の中にはビットマスクとして機能する長整数型 (Long) のメンバを持つものがある。ビットマスクはフラグ フィールドに似ているが、通常はフィールド内の特定のビットをマスクするときに使用される。一般に、対象ビットを判別しやすくするため、16 進形式を使用してビットマスクに値を割り当てる。しかし、Microsoft Visual Basic® は通常 16 進定数を一番短い型に変換しようとするため、エラーが発生することがある。たとえば、&HFF は整数型 (Integer) の値 -1 に変換される。この値が DirectX for Visual Basic に戻されると、長整数型 (Long) の値が予想されているため、&HFFFFFFFF に変換される。
16 進数のビットマスクを適切に変換するには、次のように式の後にアンパサンド (&) をもう 1 つ設定する。例を次に示す。
DDSD.ddpfPixelFormat.lRBitMask = &HFF&