DX7::D3DX Sprite question
DDCOLORKEY ddck;
ddck.dwColorSpaceHighValue = RGB(0, 0, 0);
ddck.dwColorSpaceLowValue = RGB(0, 0, 0);
lpDDSurface->SetColorKey (DDCKEY_SRCBLT, &ddck);
If you already have transparency working forgive me, I haven't seen your code to know what you have or haven't tried. Once I get the damn DX 7 SDK from MS I'll take a look at it myself.
Any other guru's have a suggestion I can try?
Let me know if this helps! I am planning to learn DirectDraw soon...
TRUE to enable color-keyed transparency. The default value is FALSE. Use this render state with D3DRENDERSTATE_ALPHABLENDENABLE to implement fine blending control.
Applications should check the D3DDEVCAPS_DRAWPRIMTLVERTEX flag in the D3DDEVICEDESC7 structure to find out whether this render state is supported.
When color-keyed transparency is enabled, only texture surfaces that were created with the DDSD_CKSRCBLT flag are affected. Surfaces that were created without the DDSD_CKSRCBLT flag exhibit color-keyed transparency effects.
Try looking in the docs next time.
Josh

Hard to read documentation is one of the reasons I don't use DirectX yet!
It's kind of ironic that the operation I want to use is called D3DXDrawSpriteSIMPLE when something as easy as what I want to do is convoluted with half a dozen renderstate flags.
I probably should have just posted the code I added in the first place, but I never seem to be at either of the systems where I made the modifications at the times I get a chance to visit this board. The code I tried looks like this:
DDCOLORKEY m_CK; //= {0x00000000, 0x00000000};
m_CK.dwColorSpaceHighValue = RGB(0,0,0);
m_CK.dwColorSpaceLowValue = RGB(0,0,0);
m_ptex->SetColorKey(DDCKEY_SRCBLT, &m_CK);
m_pd3dDevice->SetRenderState
(D3DRENDERSTATE_ALPHABLENDENABLE, TRUE);
m_pd3dDevice->SetRenderState(D3DRENDERSTATE_ALPHATESTENABLE, TRUE);
m_pd3dDevice->SetRenderState(D3DRENDERSTATE_COLORKEYBLENDENABLE, TRUE);
m_pd3dDevice->SetRenderState(D3DRENDERSTATE_COLORKEYENABLE, TRUE);