Directx9使用精灵如何实现纹理颜色的混合?

Dark_sword 2014-01-26 08:54:30
最近在试着模仿做个2D游戏,在特效这遇到了问题:
一系列的特效图片不是透明背景png,而是黑色背景,和隐隐发光的边缘,和强光本体组成【好吧说白了就是魔法弹幕】,无法利用关键色处理【因为没有一个统一的背景色】,如下图


想了半天总算想到了是利用图片的颜色和游戏其他场景颜色叠加,使得所有的黑色部分(RGB(0,0,0)附近部分)转变成原有背景色;然后经过一天的学习搜索觉得差不多是该用SetTextureStageState,但还有个问题一直解决不了,弹幕是可移动的,SetTextureStageState似乎只能将两个静态纹理混合,不能实现动态以及大小的变化。。
所以求问有什么方法解决。。最主要是想知道如何自由实现不同位图(或纹理)之间的自由颜色混合。。这样的话,弹幕在任意时刻和背景都是颜色叠加的,效果就出来了。。
...全文
170 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧