cannot make the overlay surface transparent

Started by
-1 comments, last by sunilactivity 16 years ago
Hi Friends, I am trying to create an overlay and make it transparent so that I can see the preview screen through the overlay. I was able to do this in my desktop PC by color keying. But when I try to execute the same code in my PPC device(windows mobile 5.0), it is not giving me the desired result. The overlay shows the preview screen, but any updation in the preview screen is not reflected. It is virtually like taking a snapshot of the preview screen and loading to the overlay surface. Eg: if I click on the start menu, I can hear the sound of start menu popping up, but the user can't see the popped up menu. What I want is to make the overlay transparent and any updation on the screen should be visible to the user. The device I am using is of RGB surface and it supports source colorkeying. This is my code //Trying to set the src color keying DWORD dwFlag = DDOVER_SHOW | DDOVER_KEYSRCOVERRIDE; DDOVERLAYFX ovfx; ZeroMemory(&ovfx, sizeof(ovfx)); ovfx.dwSize = sizeof(ovfx); ovfx.dckSrcColorkey.dwColorSpaceLowValue = 0; // setting the color key value as 0(black) ovfx.dckSrcColorkey.dwColorSpaceHighValue = 0 // setting the color key value as 0(black) DDBLTFX ddbltfx; ddbltfx.dwSize = sizeof(ddbltfx); ddbltfx.dwFillColor = 0; //Filling the surface with 0(which is the color key) to make it transparent hRet = m_ pOverlaySurface->Blt(NULL, NULL, NULL,DDBLT_COLORFILL | DDBLT_KEYSRCOVERRIDE,&ddbltfx); RECT rs = {0, 0, 240, 320} hRet = m_pOverlaySurface->UpdateOverlay(&rs, m_pPrimarySurface, &rs, dwFlag, &ovfx); Please help Thanks in advance Sunil

This topic is closed to new replies.

Advertisement