最近在试着模仿做个2D游戏,在特效这遇到了问题:
一系列的特效图片不是透明背景png,而是黑色背景,和隐隐发光的边缘,和强光本体组成【好吧说白了就是魔法弹幕】,无法利用关键色处理【因为没有一个统一的背景色】,如下图
想了半天总算想到了是利用图片的颜色和游戏其他场景颜色叠加,使得所有的黑色部分(RGB(0,0,0)附近部分)转变成原有背景色;然后经过一天的学习搜索觉得差不多是该用SetTextureStageState,但还有个问题一直解决不了,弹幕是可移动的,SetTextureStageState似乎只能将两个静态纹理混合,不能实现动态以及大小的变化。。
所以求问有什么方法解决。。最主要是想知道如何自由实现不同位图(或纹理)之间的自由颜色混合。。这样的话,弹幕在任意时刻和背景都是颜色叠加的,效果就出来了。。