剛用上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 閱讀(3202)
評論(3) 編輯 收藏 引用 所屬分類:
DirectX