I'm currently pondering why this is happening or if this is normal.
I currently have Magenta RGB(255,0,255) set as a colorkey for using transparency with DirectDraw blitting and even for the Direct3D textures (the alpha still works!). This has served me perfectly until now. I wanted to start adding support for various displays and begin adding all th 16bit graphics. Along with a nice FPS increase for 16bit.
But, when I run in 16bit display mode, my transparent files, no longer are transparent. The color keys are correct as with the files saved formats, I've even tried running 32bit file types (that I know work) and they still show up as so.
If this is normal then I will just stick to 32bit for now.
I wanted to post that I solved this, sometimes I dunno why I post, lol. Here is the solution, which was re'calc the RGB value to 16bit instead of 32bit. I used this function to handle this.
Private Function DX_RGB2DX(R As Long, G As Long, B As Long) As Long
DX_RGB2DX = DirectX.CreateColorRGBA(CSng((1 / 255) * R), CSng((1 / 255) * G), CSng((1 / 255) * B), 0)
Private Function DX_RGBMagenta(ByVal tmp32Bit As Boolean) As Long
Dim tmpDDPF As DDPIXELFORMAT
If tmp32Bit = True Then
DX_RGBMagenta = RGB(255, 0, 255)
DX_RGBMagenta = tmpDDPF.lBBitMask Or tmpDDPF.lRBitMask