刚用上WinCE6.0,DirectDraw部分有较大的改动,在自己改以前的代码的同时在这记录下:都比较简短,要更详细的话可以看PB的帮助文档,自己去比较下Simple中的代码^_^:
1.接口不再使用XXXXX2/4/7,而是使用统一的XXXXX, 如:
LPDIRECTDRAW g_pDD = NULL;(新)
LPDIRECTDRAW4 g_pDD = NULL;(旧)
新版本不兼容旧版本.
2.在初始化LPDIRECTDRAW g_pDD的时候不再需要QueryInterface,而是直接用 DirectDrawCreate(NULL, &g_pDD, NULL);完成.
3.DDCAPS结构改变,很多成员不再使用ddcaps.dwCaps&DDSCAP_XXX判断是否有这个功能.而是根据直接提供的ddcaps.dwXXXCpas的成员是否为0来判断.还有很多的成员的改变,这个看新的PB6.0的文档。
4. DDSURFACEDESC ddsd改动(只对于Overlay)
不再使用 ddsd.ddsCaps.dwCaps = DDSCAPS_OVERLAY | DDSCAPS_FLIP | DDSCAPS_COMPLEX | DDSCAPS_VIDEOMEMORY;
中的DDSCAPS_COMPLEX | DDSCAPS_VIDEOMEMORY;
5.Overlay的Alpha设置问题:
要Overlay有透明效果只要设置DDOVERLAYFX 中的 dwAlphaConst,dwAlphaConstBitDepth到合适的值就可以了
要更多更专业的解释请看:
http://msdn.microsoft.com/en-us/library/aa913866.aspx
posted on 2008-10-15 22:51
Lexili 阅读(3157)
评论(3) 编辑 收藏 引用 所属分类:
DirectX