Platform SDK: DirectX |
DDSURFACEDESC2 など、DirectX 型の中にはビット マスクとして機能する Long 型メンバを持つものがある。一般に、これらのメンバには 16 進形式で値を割り当てる。しかし、Visual Basic は通常 16 進定数を一番短いタイプに変換しようとする。そのため、たとえば &HFF は –1 値を持つ Integer 型データに変換される。Long 型データが返されると予想している DirectX for Visual Basic にこの値が返されると、それは &HFFFFFFFF に変換されてしまう。
16 進のビット マスクを適切に変換するためには、次のように式の後にアンパサンド (&) をもう 1 つ設定する。
DDSD.ddpfPixelFormat.lRBitMask = &HFF&