Window下的2D游戏-贴图技术

一.直接贴图-常规操作四步骤

1.利用LoadImage(...)从磁盘中加载位图资源,得到它的位图句柄

 2.利用CreateCompatibleDC()创建一个兼容DC                   

3.利用SelectObject(...)把位图对象选入到兼容DC中

4.使用BitBlt(...)把图片贴到客户区中

Window下的2D游戏-贴图技术_第1张图片

二.透明贴图:用GDI支持的图片格式BMP制作成的图片素材,如果不经过处理直接进行贴图,会出现黑框的"穿帮镜头",所以需要透明贴图

1.透明遮罩法

  • 制作遮罩图
  • 利用SelectObject(...)把位图对象选入到兼容DC中
  • 利用BitBlt(...)中最后一个参数类型改变贴图方式,将遮罩图和背景图做AND位运算,运算后的结果贴到DC中
  • 利用BitBlt(...)中最后一个参数类型改变贴图方式,将前景图和背景图做OR位运算,运算后的结果贴到DC中

Window下的2D游戏-贴图技术_第2张图片        

2.透明色彩法:贴图时可以设置某种颜色为透明色

  •  利用CreateCompatibleBitmap(...)创建一个和窗口兼容的空的位图对象,然后利用SelectObject(...)把它选择到HDC中,避免了HDC二次贴图会失效的副作用

  • 把背景图选择,贴图到HDC中
  • 把人物图选择,利用TransparentBlt(...)进行透明色彩处理贴图到HDC中
  • 最后利用BitBlt(...)把处理好的位图对象贴到客户区

Window下的2D游戏-贴图技术_第3张图片

 

你可能感兴趣的:(界面框架,游戏)