最近看了http://blog.csdn.net/column/details/vc-game-programming.html中GDI下的游戏开发,也跟着做了几节的内容。
透明图片的实现
这也是以前一直觉得很奇怪的东西,原来以为是不是每幅正方形图片中除了不规则物体外的边缘部分是在美工的时候设置了alpha值,在程序中控制不显示。这在3D中肯定是可以的,不知道在GDI下是不是也可以。但发现原来要实现动画还有一种简单的方法,就是用类似用掩码的方式。当然,这种方法需要美工人员做很多工作,为每张图都另外做一张掩码图。如下面所示(图片取自上面的地址)。
这样只要先将右面的掩码图和游戏背景图做与运算,然后再用左边的图像和上面的结果做或运算即可。具体详细解释可以参看上面的地址。同时,觉得掩码图也可以将恐龙部分做成白色的边缘做成黑色的,左边的边缘也做成白色的,这样的话操作正好是相反的,先用掩码图和背景图做或运算,然后再用左面的图和结果做与运算。
透明动画